如果存在分类法,则使用 Wordpress
Posted
技术标签:
【中文标题】如果存在分类法,则使用 Wordpress【英文标题】:Wordpress if Taxonomy Exists 【发布时间】:2014-08-25 17:04:46 【问题描述】:您好,我想知道是否有人可以帮助我。我正在创建一个带有自定义元数据的 single.php 页面。我希望与 single.php 关联的自定义帖子类型显示此自定义元。我想要一个 if 语句,以便在自定义帖子类型与特定分类相关联时仅显示特定元数据。
<?php
if(taxonomy_exists('websites'))
echo ' get_post_meta($post->ID, 'Website_URL', true)';
else
echo ' get_post_meta($post->ID, 'Website_URL',false)';
?>
但希望将其包含在 ul li 中,例如:
<ul class='post_meta'>
<li><span class='post-meta'>name:</span> <?php echo get_post_meta($post->ID, 'name', true); ?></li>
<li><span class='post-meta-key'> Description:</span> <?php echo get_post_meta($post->ID, 'short', true); ?></li>
<li><span class='post-meta-key'> <?php
if(taxonomy_exists('websites'))
echo ' get_post_meta($post->ID, 'Website_URL', true)';
else
echo ' get_post_meta($post->ID, 'Website_URL',false)';
?> </li>
</ul>
先谢谢你:)
【问题讨论】:
如果有人能帮助我,我将不胜感激 您提到“如果自定义帖子类型与特定分类相关联” - 您能否澄清此声明?您的意思是要检查您的帖子条目是否分配给特定的分类术语? 如果此项目与分类 webdesign 和/或 webdevelepment get_post_meta 相关联。 抱歉,这还不清楚。仅供参考,例如分类是“类别”,而术语是“未分类”。因此,可以在类别分类的“未分类”术语中标记帖子。你能用这些词来解释你的情况吗?简而言之,我需要知道什么是分类法,以及您要检查的术语是什么。而那个“网络开发”——是你想要检查的帖子元数据吗? 我设置了一个自定义帖子类型,其中包含几种不同的分类法。我还设置了我有信息的自定义元框。其中之一是“website_url”。例如,在帖子中,我检查了它是否属于分类网页设计。如果这篇文章有分类网页设计,那么我希望 get_post_meta 在 single.php 中显示“website_url” 【参考方案1】:不确定我是否 100% 理解你,所以我提供了 2 个版本的代码 - 随意尝试它们。
版本 1:检查帖子是否已分配给分类“类别”的术语“网页设计”:
if ( has_term('webdesign', 'category') )
$website = get_post_meta(get_the_ID(), 'Website_URL', 1);
echo '<li>' . $website . '</li>';
第 2 版:检查帖子是否包含分类“网页设计”的任何术语:
$terms = wp_get_object_terms(get_the_ID(), 'webdesign');
if($terms && is_array($terms))
$website = get_post_meta(get_the_ID(), 'Website_URL', 1);
echo '<li>' . $website . '</li>';
编辑:
版本 3: 如果帖子已分配给分类“组合”的术语“网页设计”,请使用以下代码显示网站 URL:
if ( has_term('webdesign', 'portfolios') )
$website = get_post_meta(get_the_ID(), 'Website_URL', 1);
if( $website )
echo '<li>' . $website . '</li>';
【讨论】:
你好 Marin 谢谢你的帮助,但是你看到我在 元素中的信息了吗?我希望 if 语句遵循套件,以便 get_post_meta 'website_url' 将输出与 中其余 元素相同的样式 这很简单 - 您只需将echo $website
更改为 echo '<li>' . $website . '</li>'
。我已经编辑了上面的代码。
对不起,我忘了提到分类法的名称是我在其中创建了“网页设计”一词的作品集
这就是我从一开始就问的问题 :) 我已经编辑了我的答案以上传第三版代码,请随意尝试。
你好马林不幸的是它不工作。它没有返回它只是不会显示的错误 :( 我不明白 :0 我不明白为什么??以上是关于如果存在分类法,则使用 Wordpress的主要内容,如果未能解决你的问题,请参考以下文章
如果为真,决策树分类器输出“男性”,如果为假,则输出“男性”?