Премахване на коментари от блог пост (blog post) в WordPress

Blinky

Administrator
Екип
Наскоро тестван и го споделям тук. Код, слагащ се в function.php на темата, с която е вашата WordPress инсталация:

PHP:
add_action('admin_init', function () {
    // Redirect any user trying to access comments page
    global $pagenow;
    
    if ($pagenow === 'edit-comments.php') {
        wp_redirect(admin_url());
        exit;
    }

    // Remove comments metabox from dashboard
    remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');

    // Disable support for comments and trackbacks in post types
    foreach (get_post_types() as $post_type) {
        if (post_type_supports($post_type, 'comments')) {
            remove_post_type_support($post_type, 'comments');
            remove_post_type_support($post_type, 'trackbacks');
        }
    }
});

// Close comments on the front-end
add_filter('comments_open', '__return_false', 20, 2);
add_filter('pings_open', '__return_false', 20, 2);

// Hide existing comments
add_filter('comments_array', '__return_empty_array', 10, 2);

// Remove comments page in menu
add_action('admin_menu', function () {
    remove_menu_page('edit-comments.php');
});

// Remove comments links from admin bar
add_action('init', function () {
    if (is_admin_bar_showing()) {
        remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
    }
});

Ето и ресурса: https://gist.github.com/mattclements/eab5ef656b2f946c4bfb

Ако на някой му се коментира, нека сподели и той как се е отървал от неговите, ако не иска и няма време да се занимава с редакция и отговаряне по постовете си.
 

uphero

Registered
Наскоро тестван и го споделям тук. Код, слагащ се в function.php на темата, с която е вашата WordPress инсталация:
Много лоша практика - първо че се слага във functions.php само ако ползваш твоя или чилд тема второ ако смениш темата трябва всичко от нулата да прехвърляш.
За това по-добрия според мен начин е всичко да се държи в плъгин:
PHP:
<?php
/*
Plugin name: XXXXXXXXXX
*/
// и тука надолу кода
 

Blinky

Administrator
Екип
Много лоша практика - първо че се слага във functions.php само ако ползваш твоя или чилд тема второ ако смениш темата трябва всичко от нулата да прехвърляш.
За това по-добрия според мен начин е всичко да се държи в плъгин:
PHP:
<?php
/*
Plugin name: XXXXXXXXXX
*/
// и тука надолу кода
Да, забравих да спомена, че няма да е зле да е в Чайлд темата function.php, и смяната на темата по никакъв начин не би било проблем, при положение, че просто местиш файла да рефелира към другата тема, ако няма някакви други къстамизации, касаещи старата тема.

Иначе има и друг начин, в css-а, ама това става грозно и Лейм. :)
 

Горе