下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。内存溢出小编现在分享给大家,也给大家做个参考。
我们知道为 wordpress 分类、标签添加自定义的好处在于可以做网站的搜索引擎优化(有利于 wordpress SEO),又可以提升用户体验。如果不使用自定义标题的话,即文章的标题即为网页搜索引擎抓取的标题,分类标题,需要简短一点,否则用户打开分类目录时会显得很混乱。
从搜索引擎优化角度来说,这样简短的标题也没有什么不好,但是,从整体上来说,并没有对网站进行好的搜索引擎优化。而为 wordpress 采用自定义标题的方式,可以适当增加关键词的标题,既能吸引用户,又能对搜索引擎展现良好。经过一番搜索和摸索,以及阅读 wordpress 文档,总算是找到了解决办法。在这里,不得不说一下,技术性的问题,一定要记得谷歌,记住:谷歌!很早之前用度娘查找,收获不大,当然,并不是说没有参考价值,但是却相对要小。用谷歌,这个问题很快让我找到了方案。
为 wordpress 添加分类、标签自定义标题的实现方法:把下面的代码保存复制成一个 PHP 文件,比如:Title.PHP
<?PHP
//自定义分类标题
class zm_wp_Title{
function __construct(){
// 分类
add_action( 'category_add_form_fIElds',array( $this,'add_tax_Title_fIEld' ) );
add_action( 'category_edit_form_fIElds','edit_tax_Title_fIEld' ) );
add_action( 'edited_category','save_tax_Meta' ),10,2 );
add_action( 'create_category',2 );
// 标签
add_action( 'post_tag_add_form_fIElds','add_tax_Title_fIEld' ) );
add_action( 'post_tag_edit_form_fIElds','edit_tax_Title_fIEld' ) );
add_action( 'edited_post_tag',2 );
add_action( 'create_post_tag',2 );
}
public function add_tax_Title_fIEld(){
?>
<div >
<label for="term_Meta[tax_zm_Title]">自定义标题</label>
<input type="text" name="term_Meta[tax_zm_Title]" ID="term_Meta[tax_zm_Title]" value="" />
<p >搜索引擎优化自定义标题,不填写即为默认标题</p>
</div>
<?PHP
} // add_tax_Title_fIEld
public function edit_tax_Title_fIEld( $term ){
$term_ID = $term->term_ID;
$term_Meta = get_option( "zm_taxonomy_$term_ID" );
$zm_Title = $term_Meta['tax_zm_Title'] ? $term_Meta['tax_zm_Title'] : '';
?>
<tr >
<th scope="row">
<label for="term_Meta[tax_zm_Title]">自定义标题</label>
<td>
<input type="text" name="term_Meta[tax_zm_Title]" ID="term_Meta[tax_zm_Title]" value="<?PHP echo $zm_Title; ?>" />
<p >搜索引擎优化自定义标题,不填写即为默认标题</p>
</td>
</th>
</tr>
<?PHP
} // edit_tax_Title_fIEld
public function save_tax_Meta( $term_ID ){
if ( isset( $_POST['term_Meta'] ) ) {
$t_ID = $term_ID;
$term_Meta = array();
$term_Meta['tax_zm_Title'] = isset ( $_POST['term_Meta']['tax_zm_Title'] ) ? $_POST['term_Meta']['tax_zm_Title'] : '';
update_option( "zm_taxonomy_$t_ID",$term_Meta );
} // if isset( $_POST['term_Meta'] )
} // save_tax_Meta
} // zm_wp_Title
$wptt_tax_Title = new zm_wp_Title();
function the_zm_Title() {
$category = get_the_category();
$term_ID = $category[0]->cat_ID;
$term_Meta = get_option( "zm_taxonomy_$term_ID" );
$tax_zm_Title = $term_Meta['tax_zm_Title'] ? $term_Meta['tax_zm_Title'] : '';
echo $tax_zm_Title;
}
function get_current_tag_ID() {
$current_tag = single_tag_Title('',false);
$Tags = get_Tags();
foreach($Tags as $tag) {
if($tag->name == $current_tag) return $tag->term_ID;
}
}
function zm_tag_Title() {
$term_ID = get_current_tag_ID();
$term_Meta = get_option( "zm_taxonomy_$term_ID" );
$zm_tag_Title = $term_Meta['tax_zm_Title'] ? $term_Meta['tax_zm_Title'] : '';
echo $zm_tag_Title;
}
?>
2、把 Title.PHP 文件引入到主题函数 functions.PHP 中
//自定义标题
require get_template_directory() . '/Title.PHP';
完成上面的步骤之后,基本上后台就已经出现了分类、标签自定义标题填写框,接下来需要做的就是前台的调用。
3、把下面的代码放到自定义 Title 中 ,这个需要根据主题情况。
分类标题:
<?PHP if ( is_category() ) { ?><Title><?PHP $Title = the_zm_Title(); echo ($Title) ? ''.$Title.'' : single_cat_Title(); ?> - <?PHP bloginfo('name'); ?></Title><?PHP } ?>
标签标题:
<?PHP if ( is_tag() ) { ?><Title><?PHP $Title = zm_tag_Title(); echo ($Title) ? ''.$Title.'' : single_tag_Title("",true); ?> - <?PHP bloginfo('name'); ?></Title><?PHP } ?>
非常简单,就是判断自定义标题有没有输入,如果没有的话,即显示原标题,如果有自定义标题,则显示自定义标题。
以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
总结以上是内存溢出为你收集整理的WordPress 主题添加分类/标签自定义标题全部内容,希望文章能够帮你解决WordPress 主题添加分类/标签自定义标题所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)