1
私は、すべての投稿の管理画面をフィルタリングして、ユニークなカテゴリの投稿を取得しようとしています。今では は、私がprase_queryフックと、URLの$ _GETキーを設定するために管理してきました:Wordpress管理者の変更クエリ
add_filter('parse_query', 'lxa_admin_posts_filter');
function lxa_admin_posts_filter($query) {
global $pagenow;
if (is_admin() && $pagenow=='edit.php' && isset($_GET['category_only']) && $_GET['category_only'] != '') {
$query->query_vars['meta_key'] = $_GET['category_only'];
}
}
その後、restrict_manage_postsフックを使用して、私はすべての私の投稿のカテゴリを含むドロップダウンを作成しました:
function lxa_admin_posts_filter_restrict_manage_posts() {
global $wpdb;
$categories = get_categories(array(
'taxonomy' => 'category',
'orderby' => 'name',
'parent' => 0,
'hierarchical' => true,
));
?>
<select name="category_only">
<option value=""><?php _e('Filter By Category Only', 'baapf'); ?></option>
<?php foreach ($categories as $category) {
echo '<option value= "' . $category -> term_id . '" > ' . $category -> name . '</option>';
}
?>
</select>
<?php }
この 'category_only'キーを使用して、カテゴリを1つだけ含む投稿を取得するためにループを変更することはできますか?
が
は魅力のように働きました。既存のコードで作業するためにいくつかの調整が必要でした – Adrian