专业WORDPRESS主题设计制作

is_singular()函数(singular from)

发布于: 2022-08-19

wordpress主题或插件开发过程中经常会用到页面判断函数,如判断当前页面是否是文章内容页的函数is_single()、判断是否是单页面的函数is_page(),如果是判断当前页面是文章或单页面时就要结合两个函数一起使用。而is_singular()函数则是这两个函数的升级版,通过这一个函数即可以实现前面所述的判断,并且支持附件、自定义文章类型的判断。

语法

is_singular( string|array $post_types = '' )

参数
$post_types – 字符串或数组(string|array),文章类型的一个数组,可以是page、post、attachment或custom post types,默认值为空

返回值
如果结果是要判断的页面则返回true,否则返回false

实例

is_singular()函数

判断当前页面是否是文章内容页

<?php
if(is_singular('post')){
echo '这是文章post页面';
}
?>

判断当前页面是否是文章内容页或单页面

<?php
if(is_singular(array('post','page')){
echo '这是文章内容页或单页面';
}
?>

如何移除WordPress版本号?隐藏WordPress代码内版本号(去除wordpress版权)

发布于: 2022-11-03

1 如何隐藏WordPress代码内的版本号提示?

  • 2 如何移除WordPress代码内的版本号?

 

默认情况下,当你使用WordPress构建网站时,WordPress会在你的网站上留下版本号标记。

由于某些特殊原因,如果你使用旧版本的软件,暴露WordPress版本号可能会成为你网站的安全漏洞。

如何隐藏WordPress代码内的版本号提示?

现在我们将告诉你如何隐藏WordPress版本号。

这是WordPress自动生成的代码,用于向外界宣布你使用的WordPress版本。

打开你的WordPress网站,右键单击空白区域并选择查看源代码,通常你会发现这样一行代码:

<meta name="generator" content="WordPress 5.8.1" />
  • 这是WordPress的版本号。
  • 在某些情况下,此标签也会成为网站的安全漏洞。

remove-wordpress-version-number

因此,在这种情况下,你应该隐藏网站使用的WordPress版本号。

在你的WordPress网站中,有四个地方很容易公开WordPress的版本号:

  1. 在网站源代码标题中的meta标记中:
  2. 在脚本和样式表文件中:
  3. 在网站RSS源中:
  4. 在网站根目录下的readme.html文件中。

假设你的网站总是使用最新版本的WordPress,你基本上不必担心由于泄露版本号而引起的安全问题。

在网络上隐藏WordPress版本号有很多技巧,还有最完面、最简洁的代码。

如何移除WordPress代码内的版本号?

在模板的functions.php文件中,添加以下移除WordPress版本号的代码:

/* 在 js 文件和 css 文件中隐藏 WordPress 版本号
* @return {string} $src
* @filter script_loader_src
* @filter style_loader_src
*/
function cwl_remove_wp_version_strings( $src ) {
global $wp_version;
parse_str(parse_url($src, PHP_URL_QUERY), $query);
if ( !empty($query['ver']) && $query['ver'] === $wp_version ) {
$src = remove_query_arg('ver', $src);
}
return $src;
}
add_filter( 'script_loader_src', 'cwl_remove_wp_version_strings' );
add_filter( 'style_loader_src', 'cwl_remove_wp_version_strings' );

/* 在 generator meta 标签中隐藏 WordPress版本号 */
function cwl_remove_version() {
return '';
}
add_filter('the_generator', 'cwl_remove_version');
  • 此代码可以删除前三处包含的WP版本号。
  • 对于上面第4点提到的readme.html文件,它位于WordPress的根目录中,你可以直接备份或删除它。
mv readme.html readme.bak.html
  • 此文档是关于WordPress的简要介绍和安装说明。

当然,上述做法隐藏了WordPress的版本号,并不能完全有效解决网站中存在的安全漏洞。

  • 确保网站安全的第一个要素是及时更新WordPress核心软件、主题和插件;
  • 使用可靠的用户名和密码;
  • 请勿使用来源不明的盗版主题和插件。

建议使用Wordfence Security安全插件扫描网站恶意代码。

希望我们网站( https://www.wordpressx.com/ ) 分享的《如何移除WordPress版本号?隐藏WordPress代码内版本号》,对您有帮助。

WordPress图片二级域名有什么用?如何改成图片子域名(wordpress怎么添加图片)

发布于: 2022-11-03

1 什么是Cookie-free?

  • 2 添加指定cookies域
  • 3 解析子域名
  • 4 复制图片到二级域名目录
  • 5 WordPress设置文件上传路径
    • 5.1 修改WordPress图片上传路径
  • 6 替换数据库中的图像路径
  • 7 图片链接301重定向
  • 8 删除本来的图片目录
  • 9 检查修改结果

 

当你将子域名(二级域名)作为类别目录或专题时,你可以提升URL的权重,以达到SEO搜索引擎优化的效果。

例如,网站上的所有图片,使用二级域名 img.wordpressx.com 作为图床 ▼

你可以使用二级域名作为图像路径,随时将图片从博客转移到更快的主机,只需上传图片并更改子域解析,即可解决问题。

要是你拥有中国国内的CDN服务主机,你也可以大大加快浏览速度,减轻许多服务器的负担。

由于我们网站使用WWW子域名,这种类型子域名的cookie不会污染IMG子域名,并且可以享受cookie-free,加快访问速度。

什么是Cookie-free?

YSlow就如何提高网页效率和优化网站性能提供了22条建议。

  • 其中之一是关于域名的:使用Cookie-free domains。
  • 当用户浏览器发送静态文件(如图片图片或CSS样式表文件)时,同一域名(或二级域名)中的cookie将同时发送,但Web服务器完全忽略发送过来的Cookie,因此这些无用的Cookie被浪费网站带宽,影响网站加速和网页性能。
  • YSlow建议,为了解决这个问题,你可以使用Cookie-free domains方法来优化cookies的使用,以提高网页的效率。

如果你直接使用如 wordpressx.com 这样的顶级域名作为你的博客域名,那么使用子域名作为图床不能实现Cookie-free。

  • 因为顶级域名 wordpressx.com 会向所有被请求的静态文件的二级域名服务器发送cookie。

如果你想支持Cookie-free的图床,则需要使用不同的域名来实现Cookie-free。

  • 我们网站使用 www.wordpressx.com 的子域名没有问题。

添加指定cookies域

在 wp-config.php文件中,添加以下语句 ▼

/** 指定cookies域 */
define('COOKIE_DOMAIN', 'www.wordpressx.com');

以下是Wordpress 官方 对 Set Cookie Domain 的说明:

为Wordpress设置的COOKIES Domain 可以进行一些特殊情况下的域名设置。比如使用二级域名存放静态内容。为了阻止Wordpress Cookies 在对每一个二级域名上的静态内容请求时被传送,我们可以只设置非静态域名为cookie domian。

The domain set in the cookies for WordPress can be specified for those with unusual domain setups. One reason is if subdomains are used to serve static content. To prevent WordPress cookies from being sent with each request to static content on your subdomain you can set the cookie domain to your non-static domain only.

解析子域名

第 1 步:进入DNSPod域名管理,添加二级域名(子域名) ▼

DNSPod怎么解析子域名?腾讯云DNSPod智能解析二级域名教程

DNSPod怎么解析子域名?腾讯云DNSPod智能解析二级域名教程腾讯云DNSPod智能DNS解析,只需设置相同的域名记录,指向网通和电信IP。当网通用户访问时,智能DNS将自动确定访客的到达……

 

第 2 步:将子域名的A记录,解析到主机的IP地址 ▼

dnspod-parsing-img

第 3 步:在主机面板上添加二级域名

  • 不会的,请询问你的域名或主机托管服务商。

VestaCP面板添加域名,可以参考这篇教程 ▼

VestaCP面板怎么用?安装邮局/添加多域名&文件管理

VestaCP是一个非常简单,但功能强大且高效的Linux网络主机控制面板。默认情况下,它将安装nginx Web服务器,PHP,Mysql,DNS服务器和其他必须运行完整的Web服务器的软件,这些都是建站做SEO……

 

复制图片到二级域名目录

在子域名绑定之后,通常会自动创建一个包含此子域名为目录名称的目录。

例如:

  • 如果你绑定 img.wordpressx.com,则会自动生成IMG目录。
  • 如果是一个WordPress博客,请将 wp-content/uploads 目录中的文件,复制到IMG目录里。

下面是以VestaCP面板的服务器路径为例(请修改成自己的服务器路径)。

第 1 步:SSH 进入WordPress 的 uploads 文件夹目录 ▼

cd /home/用户名/web/你的域名/public_html/wp-content/uploads

第 2 步:复制当前目录下的所有文件,到指定目录 ▼

cp -rpf -f * /home/用户名/web/图片二级域名/public_html/

第 3 步:修复图片二级域名权限 ▼

chown -R admin:admin /home/用户名/web/图片二级域名/public_html/*

WordPress设置文件上传路径

WordPress版本3.5或更高版本,在后台隐藏了媒体(Media)设置页面的上传路径(upload_path)和文件 URL 地址(upload_url_path)设置。

下图是先前版本的媒体设置界面 ▼

  • 通过此处的设置,你可以自定义保存文件的位置和生成的地址。
  • 这个功能相当不错,只是不知道为什么要隐藏它?

如果你仍然需要自定义,则可以尝试以下方法恢复。

直接将以下代码添加到WP主题的 functions.php文件中,即可恢复设置界面:

//找回上传设置
if(get_option('upload_path')=='wp-content/uploads' || get_option('upload_path')==null) {
update_option('upload_path',WP_CONTENT_DIR.'/uploads');
}
}
  • 这种方法是最简单和最有效的,所以推荐使用。

由于img目录仍在当前主机上,因此在编写博客文章时,仍然可以使用WordPress自带的编辑器,上传和添加图像。

修改WordPress图片上传路径

第 1 步:进入媒体选项

点击 “设置” 下的 “媒体” ▼

第 2 步:将 “默认上传路径”,更改为IMG目录的服务器路径 ▼

/home/用户名/web/img.wordpressx.com/public_html
  •  请注意,它后面不应有“/”。

第 3 步:将 “文件的完整URL”,更改为图片二级域名 ▼

https://img.wordpressx.com
  • 请注意,它后面不应有“/”。

第 4 步:点击“保存更改”。

替换数据库中的图像路径

下面是以VestaCP面板的服务器路径为例(请修改成自己的服务器路径)。

替换MySQL数据库中的路径,推荐安装使用 WP Migrate DB 插件 ▼

WordPress网站搬家插件:WP Migrate DB设置方法(数据库迁移利器)

WordPress网站搬家插件:WP Migrate DB设置方法(网站数据库迁移利器)有插坐插坐学院的同学,用WordPress搭建网站做公众号推广,但是网站空间不稳定,影响到SEO排名,索性将网站迁移到……

 

第 1 步:数据库批量替换 默认上传路径

将本来的服务器路径 ▼

/home/用户名/web/wordpressx.com/public_html/wp-content/uploads

替换为新的服务器路径 ▼

/home/用户名/web/img.wordpressx.com/public_html

第 2 步:数据库批量替换 图片二级域名

将本来的图片URL ▼

https://www. 你的域名 .com /wp-content/uploads/
  • 备注:以上URL添加空格,是为避免本文出现死链。

替换为新的图片二级域名 ▼

https://img. 你的域名 .com/
  • 备注:以上URL添加空格,是为避免本文出现死链。

图片链接301重定向

在.htaccess文件用正则表达式301重定向说明:

  • (.+) 对应的是任意字符(包括汉字、英文字母等)
  • (\d+)对应的是任意数字(仅仅是阿拉伯数字)
  • $1 $2 $3 是前面出现过的变量的再次引用

可以用RedirectMatch实现链接重定向:

  • 将:https://www. 你的域名 .com/wp-content/uploads/
  • 重定向到:https://img. 你的域名 .com/

在 .htaccess文件中,添加以下301重定向代码 ▼

RedirectMatch 301 ^/wp-content/uploads/(.*)$ https://img.wordpressx.com/$1

删除本来的图片目录

第 1 步:SSH进入WordPress 的 uploads 文件夹目录 ▼

cd /home/用户名/web/你的域名/public_html/wp-content/

第 2 步:删除  uploads 文件夹目录 ▼

rm -rf uploads
  • 若没删除uploads 文件夹目录,可能无法成功301重定向到图片二级域名。

检查修改结果

  1. 检查刷新文章页面,查看图片是否如常显示?
  2. 检查图片路径,是否为新二级域名的图片路径?
  3. 查看本来的图片URL,是否成功301重定向到二级域名的图片URL?
  4. 转到WordPress文章编辑器,查看文章图片显示,是否如常显示?

倘若一切如常,你也就完成了WordPress图片加载二级域名的设置了。

  • 以后文章中的图像,将保存在IMG目录中。

当你需要网站搬家转移图片时,只需将IMG目录打包后上传到新主机。

  • 然后,在DNSPod修改 img.wordpressx.com 二级域名的IP地址即可。

希望我们网站( https://www.wordpressx.com/ ) 分享的《WordPress图片二级域名有什么用?如何改成图片子域名》,对您有帮助。

TAG:

get_post_format()函数(form的method有post和get)

发布于: 2022-08-19

get_post_format()函数用于获取文章的形式,在为不同形式的文章制作不同的模板时非常有用。

语法

get_post_format( int $post = null )

参数

$post_id 整数型,默认值:null 文章的ID

返回值

  1. aside 日志
  2. chat 聊天
  3. gallery 相册
  4. link 链接
  5. image 图像
  6. quote 引语
  7. status 状态
  8. video 视频
  9. audio 音频

实例

get_post_format()函数
get_template_part('content', get_post_format());

get_template_part():根据get_post_format()返回的信息来加载content开头命名的相应的模板;

get_post_format():获取当前post的形式。

讲解

比如我们现在有一个模板 content-image.php

那么可以通过get_template_part(‘content’, get_post_format())调用,即如果当前post形式是image,也就是对应上面的返回值,那么就会调用模板content-image.php;如果返回的post分类模板不存在,那么就会使用默认post模板。

WordPress出现Warning: session_start(): Cannot send session cache(wordpress出现 unknown column)

发布于: 2022-11-03

1 翻译问题

  • 2 解决方法
    • 2.1 Linux命令查询PHP配置文件路径

 

如何解决WordPress出现Warning: session_start(): Cannot send session cache limiter?

我们在本地电脑测试WP主题时,竟出现了这样的PHP警告提示:

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at D:xampphtdocswpceshimubanwp-contentpluginswordpress-seofrontendclass-json-ld.php:121) in D:xampphtdocswpceshimubanwp-contentpluginsad-inserterclass.php(360) : eval()'d code on line 14

翻译问题

警告:session_start():无法发送会话缓存限制器 - 已发送的头文件(输出开始于D: xampp  htdocs  wp  ceshimuban  wp-content  plugins  wordpress-seo  frontend  class-json-ld.php: (360):eval()在第14行的d代码(第121行)在D: xampp  htdocs  wp  ceshimuban  wp-content  plugins  ad-inserter  class.php

解决方法

有人表示,因为在session_start(); 语句之前,有其它 html代码存在,但是

不过有些人说他的 session_start(); 之前已经做了。

还有的人说,是没有好设置 session 的保存路径,需修改 php.ini 文件中的:session.save_path = "C:/phpsession"

(后边的路径自己设置,并且要确定存在)

  • php.ini 文件一般应位于系统盘/Windows 目录下面

Linux命令查询PHP配置文件路径

Linux命令查询PHP配置文件 php.ini 文件的存放位置。

shell下执行:

article_with_pictures_plugin_1256_permanent_272b1b32c554bde86d8e4d425357c0da.webp
php -v / -name php.ini

或者

find / -name php.ini

以下是我们测试后,最终的解决办法。

  • 修改Linux服务器的 php.ini文件中的: session.auto_start = 0session.auto_start = 1

希望我们网站( https://www.wordpressx.com/ ) 分享的《WordPress出现Warning: session_start(): Cannot send session cache limiter如何解决?》,对您有帮助。

TAG:
TAG列表 wordpress最新最热TG汇集,掌握wordpress热线内容
WordPress网站安全防Featured Image From URLWordPress虚拟主机伪静态WP安全登录插件推荐Awesome SupportJetpack插件隐藏WordPress后台登录地址隐藏WordPress代码内版本号Avada主题Dropbox上传失败bootstrap自适应布局WooCommerce 商店Redis加速缓存插件CWP开启Redis缓存Avada主题演示WordPress菜单自定义图标http://www.fandutaoci.cnwp-json防止数据被采集wordpress小图标不显示WordPress广告词检测wp-json链接wordpress更换域名图标不显示WP-No-Tag-Base插件WordPress外链特色图片Image Sizes插件namechep续费优惠码WordPress滤敏感词过滤插件WordPress调试模式wordpress安全防护wordpress DropboxWordPress超级菜单wordpress Post Viewswordpress常规设置BackWPup插件WordPress官网制作WordPress网站恶意代码wordpress感谢页面保护robots.txtWordPress自动备份wordpress表单跳转谷歌 SEO扒站怎么改wordpress主题WordPress tag百度熊掌号Shortcodes Ultimatewordpress描文本Jetpack站点加速器CDN图像缓存robots.txt禁止访问wordpress打开是代码WordPress违禁词检查WordPress过滤敏感词插件禁用 xmlrpc.phpWordPress显示运行数据库robots.txt安全设置修改wordpress登录地址CWP控制面板转KLOXO-MRMarkdown here插件什么是 WooCommerceWordPress页脚页眉插件wordpress cdnWooCommerceWP SMTP插件设置Footer and Post Injections插件Wordfence Security插件xmlrpc.php攻击WordPress站内搜索排除某些类别的文章Mega Menu插件WP SMTP插件去除tag标签urlcritical automatic updatesShortcodes Ultimate插件WordPress页脚加载JSWordPress网站防护WordPress站内搜索排除所有页面WooCommerce 功能WordPress tag模版Better Search Replace插件WordPress自定义页眉Easy WP Cleaner插件Pretty Links Pro插件网站添加CDNWP插件优化head代码WooCommerce 定价WordPress文章描文本织梦采集侠wordpresswordpress文章浏览数量统计wordpress漏洞修复主机壳Wordpresswp-json漏洞wordpress文章卡片样式wp-json优化All In One WP SecurityWordPress大气的样式xmlrpc.php漏洞namechep域名优惠码h5自适应布局安装WordPress插件wp-json安全设置nameCheap最新优惠码Rich Snippets结构化数据
服务电话:
0533-2765967

微信 13280692153