wordpress调用“中文”分类目录名category slug(分类目录)的名称时,无法调试出来,必须要用英文名

wordpress调用“中文”分类目录名category slug(分类目录)的名称时,无法调试出来,必须要用英文名,第1张

category slug

一般在新建一个分类时,分类名称会用中文名。别名用英文描述,就是为了这种情况。程序调取别名就行了。

$cat=get_category_by_slug('business');//获取分类别名为 wordpress 的分类数据

第一步,将下面的代码添加到主题functions模板文件中:

function setTitle(){

$term = get_term_by('slug',get_query_var('term'),get_query_var('taxonomy'));

echo $title = $term->name;

}

第二步,用:

<php setTitle(); >

替换主题头部模板header类似这句:

<php wp_title('',true); >

(美设之家提供)

1、 在commentsphp评论表单中添加自己想要的字段,如:

<p>

<input type="text" name="tel" id="tel" size="22" tabindex="4" />

<label for="tel">电话</label>

</p>

tabindex 这个属性按照从小到大排,为什么要这样?你可以自己试试…

2、如果评论表单是使用系统自带的,那么请用以下方法添加表单字段,如果不是,请略过

add_filter('comment_form_default_fields','comment_form_add_ewai');

function comment_form_add_ewai($fields) {

$label1 = __( '国家/地区' );

$label2 = __( 'Skype账号' );

$label3 = __( '电话' );

$label4 = __( '传真' );

$label5 = __( '地址' );

$value1 = isset($_POST['guojia']) $_POST['guojia'] : false;

$value2 = isset($_POST['skype']) $_POST['skype'] : false;

$value3 = isset($_POST['tel']) $_POST['tel'] : false;

$value4 = isset($_POST['fax']) $_POST['fax'] : false;

$value5 = isset($_POST['address']) $_POST['address'] : false;

$fields['guojia'] =<<<HTML

<p>

<label for="guojia">{$label1}</label>

<input id="guojia" name="guojia" type="text" value="{$value1}" size="30" />

</p>

HTML;

return $fields;

}

3、 接收表单字段并写入数据库

在主题目录的 functionsphp添加以下代码

add_action('wp_insert_comment','wp_insert_tel',10,2);

function wp_insert_tel($comment_ID,$commmentdata) {

$tel = isset($_POST['tel']) $_POST['tel'] : false;

//_tel 是存储在数据库里的字段名字,取出数据的就会用到

update_comment_meta($comment_ID,'_tel',$tel);

}

这两步就可以将数据写入数据库了,不信你试试看

add_action()参数中的10和2分别表示该函数执行的优先级是10(默认值,值越小优先级越高),该函数接受2个参数。

4、在后台显示额外字段

前面两步只是接收和写入到数据库,那么要怎么在后台评论列表中显示呢?将以下代码复制到主题目录的functionsphp 中:

add_filter( 'manage_edit-comments_columns', 'my_comments_columns' );

add_action( 'manage_comments_custom_column', 'output_my_comments_columns', 10, 2 );

function my_comments_columns( $columns ){

$columns[ '_tel' ] = __( '电话' ); //电话是代表列的名字

return $columns;

}

function output_my_comments_columns( $column_name, $comment_id ){

switch( $column_name ) {

case "_tel" :

echo get_comment_meta( $comment_id, '_tel', true );

break;

}

如果要在前台的留言列表中调用,就用以下代码,_tel就是你在数据库中存储的字段名字

<php

$tel = get_comment_meta($comment->comment_ID,'_tel',true);

if( !empty($tel)){

echo "电话"$tel;

}

>

5、 大功告成,看看后台的评论列表,是不是多了一列电话,那样的话就没错了。

6、如果要移除某一个自带的表单字段,可以使用以下代码

function tel_filtered($fields){

if(isset($fields['tel']))

unset($fields['tel']);

return $fields;

}

add_filter('comment_form_default_fields', 'tel')

<php

$term_id = 10; //父类ID

$taxonomy_name = 'products'; //分类名,可用于自定义的,也可以是category(默认分类)、post_tag、post_format、nav_menu

$termchildren = get_term_children( $term_id, $taxonomy_name );

echo '<ul>';

foreach ( $termchildren as $child ) {

$term = get_term_by( 'id', $child, $taxonomy_name );

echo '<li><a href="'  get_term_link( $term->name, $taxonomy_name )  '">'  $term->name  '</a></li>';

}

echo '</ul>';

>

楼上的回复本可以满足你的需求了。

我列举的其实是官方的一个示例,应用范围更广,推荐你了解。

参考以下代码:

        <php if ( have_posts() ) : >

            <php while ( have_posts() ) : the_post(); 

                $categories = get_the_category();//获取当前post的分类信息

                if ( empty( $categories ) ) {

                    echo "Uncategorized";

                } else {

                    foreach ($categories as $category ) {

                        //循环输出分类的name与slug

                        echo $category->name  ":"  $cateogry->slug;

                    }

                }

             endwhile; >

        <php else : >

        <php endif; >

以上就是关于wordpress调用“中文”分类目录名category slug(分类目录)的名称时,无法调试出来,必须要用英文名全部的内容,包括:wordpress调用“中文”分类目录名category slug(分类目录)的名称时,无法调试出来,必须要用英文名、Wordpress问题,获取并显示当前文章特定的分类。、wordpress根据分类别名获取分类链接及描述并循环输出,别名为多个变量值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10154724.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存