获取类别插件并将其显示在QUERY_POST

时间:2012-04-01 作者:Dave

我刚刚在中读到“如何为wordpress主题创建选项页”wp.tutsplus.com - 我在获取类别方面有问题。

我的问题有两部分

- Part A - Get category slug and display it

本教程中有一个选择选项,如下所示:

$options[] = array(
    "section" => "select_section",
    "id"      => WPTUTS_SHORTNAME . "_select_input",
    "title"   => __( \'Select (type one)\', \'wptuts_textdomain\' ),
    "desc"    => __( \'A regular select form field\', \'wptuts_textdomain\' ),
    "type"    => "select",
    "std"    => "3",
    "choices" => array( "1", "2", "3")
现在,我不想使用1-2-3选项,而是想返回类别slug以向用户显示它-是否有人可以修改此代码,以便它返回在站点上创建的类别的slug?

- Part B - Display category slug in query_posts format

上述代码的典型返回值如下:

<?php echo $wptuts_option[\'wptuts_select_input\']; ?>
我将此代码用于我的查询帖子:

<?php query_posts(\'showposts=1&category_name=news\'); ?>
如果“news”是类别“slug”-现在不是类别的名称,是否有人可以修改代码,以便根据主题选项页中选择的选项获取类别slug?

我一直在解决这个问题,我到处找,但找不到解决方案谢谢

3 个回复
SO网友:Jamie

我不确定如何做你想做的事。但我一直在使用这个框架,它与上面的非常相似,但更易于使用

http://aquagraphite.com/2011/11/smof-documentation/

设置选项非常简单,github支持它。有一个地方可以问这些确切的问题。该框架中有许多示例,您可以复制和粘贴这些示例,以启动并运行您的管理区域。我只是注释掉了所有示例选项,以便在创建其中一个选项时可以引用它们。

至于你的答案。我不知道怎么做,但你可以试试这样的

"choices" => get_categories(  ); 

SO网友:Milo

我们从示例中看到,该选项接受一个简单的值数组:

array( "1", "2", "3")
get_categories 返回一个对象数组,因此我们需要重新格式化以使其正常工作:

$categories = get_categories();
$slugs = array();
foreach( $categories as $category )
    $slugs[] = $category->slug;
现在我们有一个简单的数组$slugs 要通过:

$options[] = array(
    "section" => "select_section",
    "id"      => WPTUTS_SHORTNAME . "_select_input",
    "title"   => __( \'Select (type one)\', \'wptuts_textdomain\' ),
    "desc"    => __( \'A regular select form field\', \'wptuts_textdomain\' ),
    "type"    => "select",
    "choices" => $slugs
);

SO网友:AddWeb Solution Pvt Ltd

将此代码放入函数中。php

$terms = get_the_terms( $post->ID , \'category\');
if($terms) {
  foreach( $terms as $term ) {
    $cat_obj = get_term($term->term_id, \'category\');
    $cat_slug = $cat_obj->slug;
  }
}
然后将var$cat\\u slug设置为“选项”,

然后将var$cat\\u slug设置为“选项”,

$options[] = array(
 "section" => "select_section",
 "id" => WPTUTS_SHORTNAME . "_select_input",
 "title" => _( \'Select (type one)\', \'wptuts_textdomain\' ),
 "desc" => _( \'A regular select form field\', \'wptuts_textdomain\' ),
 "type" => "select",
 "choices" => $cat_slug
);

结束

相关推荐

JQuery行中等高冲突只适用于不注册wp_footer();

我正在尝试制作may自己的Wordpress主题。我希望blogpost丢失DIVs块的场景在行中相等。我正在使用CSS技巧中非常酷的JQuery教程来实现它。这是教程http://css-tricks.com/equal-height-blocks-in-rows/我正在函数中排队JQuery/JS。php如下:// Load jQuery if ( !is_admin() ) { wp_deregister_script(\'jquery\'); wp_re