首页经验根据作者元数据有无,使用CSS显示或隐藏区块

根据作者元数据有无,使用CSS显示或隐藏区块

圆圆2025-07-20 17:00:44次浏览条评论

根据作者元数据有无,使用css显示或隐藏区块

论文旨在解决WordPress Elementor Pro搭建的作者页面中,根据作者元数据(如城市、风格、级别等)的有无,动态显示隐藏或特定区块的问题。通过修改代码,使用get_the_author_meta函数分别获取各元数据,并结合OR判断是否显示提示信息,从而实现更灵活的页面展示效果。

在WordPress使用的Elementor专业作者创建作者页面时,经常需要根据元数据来显示不同的信息。有时,我们在某些元数据为空时,显示一条提示信息。本文将介绍如何使用CSS和PHP来实现这一功能,即当作者的城市、风格或最高级别等信息丢失时,修改显示预先定义的提示信息块。

问题分析

核心问题提出如何正确判断多个元数据字段是否为空,并根据判断结果动态地CSS样式,从而达到提示控制信息块的显示与隐藏。get_the_aut hor_meta函数是获取作者元数据的关键,但需要注意一次其只能获取一个字段的值。

立即学习“前端免费学习笔记(深入)”;

解决方案

正确的做法是分别获取每个元数据字段的值以下是两种实现方式:

方式一:分别获取并存储元数据

这种方式更容易理解和调试,将每个元数据的值存储在单独的变量中。 Nothing_to_show_display(){ 全局 $post; $author_id = $post-gt;post_author; $author_city = get_the_author_meta('city', $author_id); $author_style_of_play = get_the_author_meta('style_of_play', $author_id); $author_highest_division = get_the_author_meta('highest_division', $author_id); if(empty($author_city) || empty($author_style_of_play) || empty($author_highest_division)) : ?gt; lt;样式类型=quot;text/cssquot;gt; #profile_info_template { display: inline-block !important; } lt;/stylegt; lt;?php endif;}add_action( 'wp_head', 'nothing_to_show_display', 10, 1 );登录后复制

方式二:直接在条件判断中使用函数

这种代码方式比较简洁,但差别较大。

function Nothing_to_show_display(){ global $post; $author_id = $post-gt;post_author; if(empty(get_the_author_meta('city', $author_id)) ||empty(get_the_author_meta('style_of_play', $author_id)) ||empty(get_the_author_meta('highest_division', $author_id))) : ?gt; lt;style type=quot;text/cssquot;gt; #profile_info_template { display: inline-block !important; } lt;/stylegt; lt;包含?php endif;}add_action( 'wp_head', 'nothing_to_show_display', 10, 1 );登录后复制

代码解释全局$post;:获取全局的$post对象,其中当前文章的信息。$author_id = $post-gt;post_author;:获取当前文章的ID。get_the_author_meta('field_name', $author_id);:获取指定作者ID的指定元数据字段的值。empty():PHP内置函数,用于判断变量是否为空。如果变量不存在,或者它的值等于false,那么就会被认为是空的。empty()不会产生警告,即使未定义。||:逻辑或运算符,只要其中一个条件为真,整个表达式就为真。#profile_info_template:需要显示控制/隐藏的提示信息块的ID。display:inline-block !important;:CSS样式,用于强制显示该块。!important用于覆盖其他样式规则。add_action( 'wp_head', 'nothing_to_show_display', 10, 1 );:将nothing_to_show_display函数挂载到wp_head钩子上,设置在页面头部事项执行。

注意确保#profile_info_template块在HTML中存在,并且默认设置为display: none;。根据实际情况元数据字段名称(city、style_of_play、highest_division)和提示信息块的ID进行修改。可以使用更复杂的CSS样式来控制提示信息的显示效果。如果需要更复杂的逻辑判断,可以使用表达式的if语句或切换语句。

总结

通过以上方法,我们可以灵活地根据作者元数据的有无、动态或页面上的特定块显示,从而隐藏提升用户体验。关键在于理解get_the_author_meta函数的实现,以及如何使用逻辑运算符进行条件判断。此外,合理利用CSS样式可以实现更丰富的展示效果。

以上就是根据作者元数据有无,使用CSS显示或屏蔽的详细内容,更多请关注乐哥常识网其他相关文章!

根据作者元数据有无  
鲸交所赵翼圈了多少钱 鲸交所fil
相关内容
发表评论

游客 回复需填写必要信息