WordPress 最棒的地方之一就是可以自定义各个方面。您可以定制的东西太多了,很难知道从哪里开始,尤其是如果您是 WordPress 的新手。我们为您提供了一些我们最喜欢的 WordPress 代码片段,供您在网站上使用。
您可以使用 Code Snippets 插件或在主题的 functions.php 中添加这些代码片段。本文底部还将向你展示如何在 WordPress 中添加代码片段。
下面是一些有用的 WordPress 代码片段:
1. 禁用管理工具栏
有些缓存系统要求您不要为登录用户和公共用户设置不同的代码,因此禁用 WordPress 管理工具栏在这种情况下非常有用。
如果你想在所有页面上为登录用户禁用 WordPress 管理工具栏,请在主题 functions.php 中使用以下代码段。
<?php //Disable WordPress admin bar for all logged in users add_filter('show_admin_bar', '__return_false');
2. 在 RSS 源中显示文章缩略图
默认情况下,WordPress 只会在 RSS 源中显示文本,但如果您想在 RSS 源中显示您设置的特色图片,此代码段就可以实现这一功能。
这将在网站 RSS 源的内容之前添加文章的特色缩略图。
<?php //This will prepend your WordPress RSS feed content with the featured image add_filter('the_content', 'smartwp_featured_image_in_rss_feed'); function smartwp_featured_image_in_rss_feed( $content ) { global $post; if( is_feed() ) { if ( has_post_thumbnail( $post->ID ) ){ $prepend = '<div>' . get_the_post_thumbnail( $post->ID, 'medium', array( 'style' => 'margin-bottom: 10px;' ) ) . '</div>'; $content = $prepend . $content; } } return $content; }
3. 更改摘要的 “Read More” 文本
无论您是想更改 WordPress 中的 “Continue Reading” 文本,还是想用 HTML 将其变成一个按钮,下面的代码段都能让您更改摘要的 “Read more”。
<?php // Changing excerpt more function smartwp_change_excerpt_more_text( $more ){ global $post; return '… <a href="https://www.wbolt.com/code-snippets-for-wordpress.html'.get_permalink($post->ID).'" title="'.esc_attr(get_the_title($post->ID)).'">'.'Read More »'.'</a>'; } add_filter('excerpt_more', 'smartwp_change_excerpt_more_text');
4. 更改文章摘要长度
默认情况下,WordPress 中的摘要长度为 55 个字。此代码片段将把摘要长度改为 24 个字,但您也可以根据自己的需要随意调整。
<?php //Change the default excerpt length in WordPress (default is 55 words) function smartwp_change_excerpt_length( $length ) { return 24; } add_filter( 'excerpt_length', 'smartwp_change_excerpt_length', 9999);
5. 用 PHP 添加管理员用户
面对现实,我们都曾被锁定在 WordPress 网站之外,或者不得不在没有登录信息的情况下在新网站上工作。
这段代码可以使用主题的 function.php 为网站添加一个新的管理员。
我曾在很多 WordPress 网站上工作过,这些网站没有正确配置电子邮件服务器,因此即使有登录信息也很难访问网站。
该代码段将使用变量中设置的用户名/密码/电子邮件创建一个用户。值得注意的是,它只会在用户名/电子邮件不存在的情况下尝试创建用户,因此如果你已经有一个带有电子邮件地址的账户,你可以用虚拟数据填写电子邮件。
<?php //Create an admin user function smartwp_create_admin_user(){ $username = 'yourusername'; $password = '2JyAEQJ9B9Jf5T8a'; $email = 'change@me.com'; //This will ensure it only tries to create the user once (based on email/username) if ( !username_exists( $username ) && !email_exists( $email ) ) { $userid = wp_create_user( $username, $password, $email ); $user = new WP_User( $userid ); $user->set_role( 'administrator' ); } } add_action('init', 'smartwp_create_admin_user');
6. 在文本小工具中启用简码
简码在 WordPress 中非常强大,在部件中使用它们很有帮助。此代码段将允许您在文本小工具中添加简码并执行它们。
<?php //Enable shortcodes in text widgets add_filter('widget_text', 'do_shortcode');
7. 添加自定义仪表盘 Logo
如果您想为 WordPress 网站添加更多品牌标识,此代码段将替换仪表盘左上角的 Logo。
确保上传 admin-icon.png 到主题目录。您还可以更改 CSS,在 background-image
属性中链接到任何文件。
<?php //Adds a custom logo to the top left of the WordPress admin function smartwp_custom_logo_wp_dashboard() { echo "<style type='text/css'> #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before { background-image: url('" . get_bloginfo('stylesheet_directory') . "/admin-icon.png'); background-size: contain; background-position: 0 0; color:rgba(0, 0, 0, 0); } #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon { background-position: 0 0; } </style>"; } add_action('wp_before_admin_bar_render', 'smartwp_custom_logo_wp_dashboard');
8. 允许上传 SVG
SVG 格式越来越受欢迎,尤其是徽标文件。当然,您可以使用插件或代码片段来启用这一功能。
出于安全考虑,WordPress 默认不允许上传 SVG,但我们的代码片段只允许网站管理员上传 SVG 文件。
<?php //Enable SVG upload function smartwp_enable_svg_upload( $mimes ) { //Only allow SVG upload by admins if ( !current_user_can( 'administrator' ) ) { return $mimes; } $mimes['svg'] = 'image/svg+xml'; $mimes['svgz'] = 'image/svg+xml'; return $mimes; } add_filter('upload_mimes', 'smartwp_enable_svg_upload');
9. 在 WordPress 中禁用 XML-RPC
你很少需要在 WordPress 网站上启用 XML-RPC,但启用它可能会导致一系列安全问题。
如果你使用 WordPress 应用程序,你可能需要继续启用它,但我很少看到启用 XML-RPC 的情况。
本代码段将禁用 XML-RPC,以提高网站安全性。
<?php //Disable XML-RPC add_filter('xmlrpc_enabled', '__return_false');
10. 移除 jQuery Migrate
如果您正试图提高网站性能,您可能已经注意到 jQuery Migrate 正在您的网站上加载。如果打开控制台,你会看到 “JQMIGRATE: Migrate is installed, version 1.4.1″。
jQuery Migrate 增加了对旧版本 jQuery 的支持,通常对旧主题很有用。根据我的经验,很少需要它,所以最好将其移除,以减少页面加载时的一个请求。
下面的代码段将移除网站上的 jQuery Migrate。移除 jQuery Migrate 后,查看几个页面,确保网站仍能正常运行。
<?php //Remove jQuery migrate function smartwp_remove_jquery_migrate( $scripts ) { if ( !is_admin() && !empty( $scripts->registered['jquery'] ) ) { $scripts->registered['jquery']->deps = array_diff( $scripts->registered['jquery']->deps, ['jquery-migrate'] ); } } add_action('wp_default_scripts', 'smartwp_remove_jquery_migrate');
注:您可以通过安装 WPTurbo 插件快速实现上述诸如禁用 emoji、禁用前端管理员栏、禁用 XML-RPC 和移除 jquery migrate 等代码片段功能,而无需向WordPress添加代码片段或者安装代码片段插件实现。
如何在 WordPress 中添加代码片段
如果您需要帮助在 WordPress 中添加 PHP 代码片段最简单直接的方法是通过 Code Snippets 插件。
向 WordPress 网站添加代码的最简单方法之一就是使用 Code Snippets 插件。
这个 WordPress 插件能让你在一个简单易用的界面上轻松组织和添加代码片段。
Code Snippets 插件界面
最重要的是,你可以轻松选择代码片段的运行位置,并将其关闭或打开。非常适合 PHP 代码片段初学者。
感谢您查看这些实用的 WordPress 代码片段。这些代码片段可以添加到主题的 function.php 中,也可以使用 Code Snippets 这样的插件添加。