2013-10-02 2 views
0

Есть ли в Wordpress, чтобы вернуть отсортированный список всех защищенных паролем страниц на сайте Wordpress?Как перечислить защищенные паролем Wordpress?

Если да, то как это сделать?

Я в принципе хочу одна страница, показывающая список всех страниц, которые защищены паролем ...

Спасибо! :)

ответ

0

Вы можете попробовать это

$password_pages = $wpdb->get_col("SELECT ID FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'post' AND post_password !=''"); 
wp_list_pages('include=' . implode(",", $password_pages)); 
+0

@ user2019515, Просто дайте мне пример того, как вы получите всю защищенный пароль страницы с вашим примером? –

+0

@ user2019515, также 'Не делайте этого, используйте объект WP_Query', почему это, если возможно, ваш путь? –

-1
// Filter to hide protected posts 
function exclude_protected($where) { 
    global $wpdb; 
    return $where .= " AND {$wpdb->posts}.post_password = '' "; 
} 

// Decide where to display them 
function exclude_protected_action($query) { 
    if(!is_single() && !is_page() && !is_admin()) { 
     add_filter('posts_where', 'exclude_protected'); 
    } 
} 

// Action to queue the filter at the right time 
add_action('pre_get_posts', 'exclude_protected_action'); 

Я предложил бы использовать фильтр, кусок кода выше исключить все защищенные паролем сообщения, с некоторыми редактирования вы сможете получить все защищенные паролем сообщения.

Подробнее: https://codex.wordpress.org/Using_Password_Protection#Hiding_Password_Protected_Posts

+1

Придумайте пример с использованием объекта 'WP_Query', который будет возвращать' protected protected '' '' '' '' 'с паролем (вход в систему/выход), и это приведет к возврату сообщений, чей статус является приватным. Также прочитайте вопрос «Я в основном хочу, чтобы на одной странице показывался список всех страниц, защищенных паролем ...» и «post_status:« private »- не видно пользователям, которые не вошли в систему.« –

+0

Привет, я хочу, чтобы пользователи, не вошли в систему, чтобы иметь возможность просматривать список всех защищенных паролем сообщений. На странице ... Пользователь, который не вошел в систему, может щелкнуть страницу, которую они хотят просмотреть, и ввести пароль, который им был предоставлен. Он будет использоваться для галереи изображений клиента ... Спасибо за ответ! – myatix

+0

@myatix, вы запросили защищенные паролем страницы в своем вопросе, но здесь вы упомянули о 'posts' вместо этого, в любом случае, проверьте мой ответ и просто измените post_type = 'post'', чтобы показать страницы или оставить их, если вы хотите показать сообщения. Поместите код в шаблон страницы, который вы используете, чтобы показать список. –

Смежные вопросы