BeAPI / bea-media-analytics

Find where and how media are used across your site.
https://wordpress.org/plugins/bea-media-analytics/
Other
14 stars 1 forks source link

Indexation cron don't launch #84

Open MaximeCulea opened 6 years ago

MaximeCulea commented 6 years ago

From https://wordpress.org/support/topic/notice-toujours-affichee :

J’ai installé l’extension il y a plusieurs heures, et depuis, la notice “Comme l’extension BEA – Media Analytics vient d’être activée, le processus d’indexation des contenus va se lancer automatiquement en tâche de fond.” est constamment affichée.

Ma bibliothèque de média n’est pas si importante que cela (moins de 360 images).

J’ai bien tous les champs de l’extension, mais tous sont vierges (selon l’extension, aucune image n’est utilisée).

Mahjouba91 commented 3 years ago

On some environments, crons are not something doable, like in local, the plugin should provide an option in the backend to force the indexation IMO.

Something like this:

<?php
    add_action( 'admin_init', 'add_media_indexing_button' );

    /**
     * Add option page for media index
     */
    function add_media_indexing_button(): void {
        add_settings_section(
            'media_indexing',
            __( 'Media Indexing' ),
            '__return_null',
            'media'
        );

        add_settings_field(
            'media_indexing_button',
            __( 'Trigger indexing' ),
            static function() {
                if ( isset( $_GET['force_media_index'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification
                    BEA\Media_Analytics\Main::get_instance()->force_indexation();

                    ?>
                    <div class="notice notice-info notice-info-stronger"><p>Media index rebuilt successfully</p></div>
                    <?php
                }

                ?>
                <a href="<?php echo esc_url( add_query_arg( 'force_media_index', 1, menu_page_url( 'options-media', false ) ) ); ?>" class="button">Force media index</a>
                <?php
            },
            'media',
            'media_indexing'
        );
    }