【WP|1】深入解析WordPress常用的函数、方法

WordPress 是一个广泛使用的内容管理系统(CMS),其灵活性和扩展性使其成为创建和管理网站的首选。为了充分利用 WordPress
的功能,了解其常用的函数和方法是必不可少的。本文将深入解析一些最常用和最有用的 WordPress
函数和方法,帮助开发者更好地掌握和利用这个强大的平台。

该函数返回当前主题目录的 URL。常用于在主题中引用 CSS、JavaScript 文件或图像。

<span class="token operator"><</span>link rel<span class="token operator">=</span><span class="token string double-quoted-string">"stylesheet"</span> href<span class="token operator">=</span><span class="token string double-quoted-string">"<?php echo get_template_directory_uri(); ?>/style.css"</span><span class="token operator">></span>
<span class="token operator"><</span>link rel<span class="token operator">=</span><span class="token string double-quoted-string">"stylesheet"</span> href<span class="token operator">=</span><span class="token string double-quoted-string">"<?php echo get_template_directory_uri(); ?>/style.css"</span><span class="token operator">></span> 
<link rel="stylesheet" href="<?php echo get_template_directory_uri(); ?>/style.css">

此函数包含主题的头部模板文件 header.php。调用该函数可以将头部模板插入到页面的合适位置。

<span class="token delimiter important"><?php</span> <span class="token function">get_header</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span>
<span class="token delimiter important"><?php</span> <span class="token function">get_header</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span> 
<?php get_header(); ?>

get_header() 类似,get_footer() 包含主题的底部模板文件 footer.php。它通常用于在页面的底部插入公共的页脚内容。

<span class="token delimiter important"><?php</span> <span class="token function">get_footer</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span>
<span class="token delimiter important"><?php</span> <span class="token function">get_footer</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span> 
<?php get_footer(); ?>

在循环(The Loop)中使用,用于将全局 $post 变量设置为当前查询到的文章数据。一般用于自定义查询结果的遍历。

<span class="token keyword">if</span> <span class="token punctuation">(</span> <span class="token function">have_posts</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> <span class="token keyword">while</span> <span class="token punctuation">(</span> <span class="token function">have_posts</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> <span class="token function">the_post</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span> <span class="token function">have_posts</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> <span class="token keyword">while</span> <span class="token punctuation">(</span> <span class="token function">have_posts</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> <span class="token function">the_post</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>  <span class="token punctuation">}</span> <span class="token punctuation">}</span> 
if ( have_posts() ) { while ( have_posts() ) { the_post(); } }

输出或返回当前文章的标题,通常在循环中使用。

<span class="token operator"><</span>h2<span class="token operator">></span><span class="token operator"><</span><span class="token operator">?</span>php <span class="token function">the_title</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span><span class="token operator"><</span><span class="token operator">/</span>h2<span class="token operator">></span>
<span class="token operator"><</span>h2<span class="token operator">></span><span class="token operator"><</span><span class="token operator">?</span>php <span class="token function">the_title</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span><span class="token operator"><</span><span class="token operator">/</span>h2<span class="token operator">></span> 
<h2><?php the_title(); ?></h2>

输出当前文章的内容,支持输出短代码和其他内容过滤。

<span class="token operator"><</span>div <span class="token keyword">class</span><span class="token operator">=</span><span class="token string double-quoted-string">"post-content"</span><span class="token operator">></span> <span class="token operator"><</span><span class="token operator">?</span>php <span class="token function">the_content</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span> <span class="token operator"><</span><span class="token operator">/</span>div<span class="token operator">></span>
<span class="token operator"><</span>div <span class="token keyword">class</span><span class="token operator">=</span><span class="token string double-quoted-string">"post-content"</span><span class="token operator">></span> <span class="token operator"><</span><span class="token operator">?</span>php <span class="token function">the_content</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span> <span class="token operator"><</span><span class="token operator">/</span>div<span class="token operator">></span> 
<div class="post-content"> <?php the_content(); ?> </div>

返回登录页面的 URL。可用于创建自定义登录链接。

<span class="token operator"><</span>a href<span class="token operator">=</span><span class="token string double-quoted-string">"<?php echo wp_login_url(); ?>"</span><span class="token operator">></span>登录<span class="token operator"><</span><span class="token operator">/</span>a<span class="token operator">></span>
<span class="token operator"><</span>a href<span class="token operator">=</span><span class="token string double-quoted-string">"<?php echo wp_login_url(); ?>"</span><span class="token operator">></span>登录<span class="token operator"><</span><span class="token operator">/</span>a<span class="token operator">></span> 
<a href="<?php echo wp_login_url(); ?>">登录</a>

返回登出页面的 URL。可以附加一个重定向参数,用户登出后会跳转到指定页面。

<span class="token operator"><</span>a href<span class="token operator">=</span><span class="token string double-quoted-string">"<?php echo wp_logout_url(home_url()); ?>"</span><span class="token operator">></span>登出<span class="token operator"><</span><span class="token operator">/</span>a<span class="token operator">></span>
<span class="token operator"><</span>a href<span class="token operator">=</span><span class="token string double-quoted-string">"<?php echo wp_logout_url(home_url()); ?>"</span><span class="token operator">></span>登出<span class="token operator"><</span><span class="token operator">/</span>a<span class="token operator">></span> 
<a href="<?php echo wp_logout_url(home_url()); ?>">登出</a>

生成一个链接到注册页面的 HTML 超链接元素,如果允许用户注册的话。

<span class="token delimiter important"><?php</span> <span class="token function">wp_register</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span>
<span class="token delimiter important"><?php</span> <span class="token function">wp_register</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span> 
<?php wp_register(); ?>

检查一个插件是否被激活。通常在插件开发中用来判断依赖插件是否可用。

<span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token function">is_plugin_active</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'plugin-directory/plugin-file.php'</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> <span class="token punctuation">}</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token function">is_plugin_active</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'plugin-directory/plugin-file.php'</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span>  <span class="token punctuation">}</span> 
if (is_plugin_active('plugin-directory/plugin-file.php')) { }

触发一个动作钩子,允许其他函数通过 add_action() 挂载到这个钩子上执行。

<span class="token function">do_action</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'my_custom_action'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token function">do_action</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'my_custom_action'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> 
do_action('my_custom_action');

应用过滤器钩子,允许其他函数通过 add_filter() 修改数据。

<span class="token variable">$title</span> <span class="token operator">=</span> <span class="token function">apply_filters</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'my_custom_filter'</span><span class="token punctuation">,</span> <span class="token variable">$title</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token variable">$title</span> <span class="token operator">=</span> <span class="token function">apply_filters</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'my_custom_filter'</span><span class="token punctuation">,</span> <span class="token variable">$title</span><span class="token punctuation">)</span><span class="token punctuation">;</span> 
$title = apply_filters('my_custom_filter', $title);

WordPress 数据库全局对象,用于执行自定义 SQL 查询。

<span class="token keyword">global</span> <span class="token variable">$wpdb</span><span class="token punctuation">;</span> <span class="token variable">$results</span> <span class="token operator">=</span> <span class="token variable">$wpdb</span><span class="token operator">-></span><span class="token function">get_results</span><span class="token punctuation">(</span><span class="token string double-quoted-string">"SELECT * FROM <span class="token interpolation"><span class="token punctuation">{<!-- --></span><span class="token variable">$wpdb</span><span class="token operator">-></span><span class="token property">prefix</span><span class="token punctuation">}</span></span>my_table"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">global</span> <span class="token variable">$wpdb</span><span class="token punctuation">;</span> <span class="token variable">$results</span> <span class="token operator">=</span> <span class="token variable">$wpdb</span><span class="token operator">-></span><span class="token function">get_results</span><span class="token punctuation">(</span><span class="token string double-quoted-string">"SELECT * FROM <span class="token interpolation"><span class="token punctuation">{<!-- --></span><span class="token variable">$wpdb</span><span class="token operator">-></span><span class="token property">prefix</span><span class="token punctuation">}</span></span>my_table"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> 
global $wpdb; $results = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}my_table");

从数据库中检索存储的选项值。

<span class="token variable">$option_value</span> <span class="token operator">=</span> <span class="token function">get_option</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'my_option_name'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token variable">$option_value</span> <span class="token operator">=</span> <span class="token function">get_option</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'my_option_name'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> 
$option_value = get_option('my_option_name');

更新数据库中的选项值,如果选项不存在则添加。

<span class="token function">update_option</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'my_option_name'</span><span class="token punctuation">,</span> <span class="token string single-quoted-string">'new_value'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token function">update_option</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'my_option_name'</span><span class="token punctuation">,</span> <span class="token string single-quoted-string">'new_value'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> 
update_option('my_option_name', 'new_value');

熟悉并掌握 WordPress 的常用函数和方法,是开发高效、功能丰富的网站的基础。通过合理使用这些函数,开发者可以更加灵活地控制和定制 WordPress 网站的各个方面,提升开发效率和用户体验。希望本文的解析能为你的 WordPress 开发之路提供帮助。

原文链接:https://blog.csdn.net/weixin_36755535/article/details/139275727?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171852222916800178541030%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171852222916800178541030&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-27-139275727-null-null.nonecase&utm_term=cms%E4%B8%BB%E9%A2%98

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享