纯代码给WordPress网站添加独立下载页面功能

news/2024/5/9 16:35:18/文章来源:https://blog.csdn.net/csnewdn/article/details/54666451

纯代码给WordPress网站添加独立下载页面功能

简单代码,给WordPress主题添加单页下载功能

纯代码给WordPress网站添加独立下载页面功能

前言

前几天有个朋友在扣扣上向我咨询下载单页的使用,我今天正好在学车,用手机打字在写下,也顺便给其他有需要的朋友们看看。

介绍

首先简单介绍下下载单页,一般来说下载单页就是在当前文章页插入一个按钮或者一个面板,点击之后的下载文件是在一个单独的页面的,这样的好处就是可以增加很多的下载说明以及广告,另外这样也可以增加访客的浏览量。我上次看到有人用安装2个WordPress来实现这个功能也是醉醉的。

开始

因为云落的Git主题是自带的下载单页的功能的,所以云落就拿WordPress的默认主题来做吧,就是20主题。本次教程重在功能代码,不在美化代码,所以云落只是简单做出差不多的东西就可以了,正所谓授人以鱼不如授人以渔是吧。

第一步,增加页面

首先第一步就是给主题增加一个页面,找到主题的默认页面文件,一般叫page.php,将他复制一份,重命名为download.php,然后就是对这个文件稍微改改了。

第二步,修改下载模板

首先打开download.php文件,将

  1. <?php
  2. get_header();
  3. ?>

替换为下面这段代码

  1. <?php
  2. /*
  3. template name: 下载模板页面
  4. description: template for WordPress theme
  5. */
  6. get_header();
  7. ?>

然后在下面添加这短代码

  1. <?php
  2. $pid = isset( $_GET['pid'] ) ? trim(htmlspecialchars($_GET['pid'], ENT_QUOTES)) : '';
  3. if( !$pid ) { wp_redirect( home_url() );}
  4. $title = get_the_title($pid);
  5. $values1 = get_post_custom_values('download_name',$pid);
  6. empty($values1) ? Header('Location:/') : $theCode1 = $values1[0];
  7. $values2 = get_post_custom_values('download_size',$pid);
  8. empty($values2) ? Header('Location:/') : $theCode2 = $values2[0];
  9. $values3 = get_post_custom_values('download_link',$pid);
  10. empty($values3) ? Header('Location:/') : $theCode3 = $values3[0];
  11. ?>

其实上面这段代码才是下载单页的核心代码,看上去也是很简单吧。
然后在下面合适的地方放入以下代码,这里就是你用来显示下载文件信息的地方,具体地址你们自己看吧。

  1.             <h2>资源信息</h2>
  2. <div class="alert alert-success">
  3. <ul class="infos clearfix">
  4.                 <li>资源名称:<?php echo $theCode1; ?></li>
  5. <li>文件大小:<?php echo $theCode2; ?></li>
  6. <li>更新日期:<?php echo get_post($pid)->post_modified; ?></li>
  7. </ul>
  8. </div>
  9.             <h2>下载地址</h2>
  10.             <div id="filelink">
  11. <center><?php echo $theCode3; ?></center>
  12.             </div>
  13. <div class="clearfix"></div>
  14.             <h2>下载说明</h2>
  15. <div class="alert alert-info" role="alert">
  16.             下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字
  17.             </div>
  18.             <h2>免责声明</h2>
  19. <div class="alert alert-warning" role="alert">
  20. 免责声明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字
  21. </div>

经过上面的修改,这个文件就可以保存了,记住编码是utf-8的哦。

这里说下,理论上来说,这里其实就已经做好了下载单页的功能,只是在使用的时候不方便,不实用,所以为了方便使用还需要继续修改代码。

新建页面

打开后台,新建页面,选择模板,应该会有一个下载模板页面,选择那个,然后页面名字就叫下载中心吧,然后页面的别名就是download,其实如果你觉得页面名字英文的不太好,也可以写做其他名字,但是别名一定要是download,也就是说这个页面的URL应该是这样的http://localhost/download,做好之后发布就好了,别去访问页面哦,一般来说页面会自动回到首页的,这个页面是不可以直接访问的,这里就做的可以了,进入下一个步骤。
纯代码给WordPress网站添加独立下载页面功能

建立短代码

打开主题的functions.php文件,把下面代码放进去

  1. //下载单页短代码
  2. function page_download($atts, $content = null) {
  3.     return '<a class="lhb" href="'.site_url().'/download?pid='.get_the_ID().'" target="_blank" rel="nofollow">' . $content . '</a>';
  4. }
  5. add_shortcode('pdownload', 'page_download');

嗯,这样就可以了,这段代码为了建立download短代码的,但是还没有结束,接着看下一步。

添加编辑器按钮

这里说的按钮是WordPress默认编辑器,而且是文本编辑器,在functions.php添加下面代码就可以了。

  1. //添加编辑器按钮
  2. function download_tags($mce_settings) {
  3. ?>
  4. <script type="text/javascript">
  5. QTags.addButton( 'hy_download', '下载按钮', '[pdownload]', '[/pdownload]' );
  6. function download_shortcode() {
  7. }
  8. </script>
  9. <?php
  10. }
  11. add_action('after_wp_tiny_mce', 'download_tags');

纯代码给WordPress网站添加独立下载页面功能
使用这段代码可以在WordPress文本编辑器出来一个按钮,使用的时候先写几个字,比如点击下载,然后选择文字之后点击按钮,就好了。做到这里下载单页就做好了,下面说说具体怎么使用吧。

使用方法

做好了开始使用下载单页,我们需要用自定义栏目栏目,发布文章的时候先把自定义栏目打开,然后在自定义栏目那里有一个新建自定义栏目
纯代码给WordPress网站添加独立下载页面功能
输入download_name,然后右侧输入文件的名字,比如:苍老师的那些事.RMVB,继续输入自定义栏目 download_size,然后右侧输入文件的大小,比如:233MB,然后继续输入自定义栏目 download_link,然后右侧输入文件的下载链接,注意,这里需要输入的是A标签代码,比如:点击下载
纯代码给WordPress网站添加独立下载页面功能
这里做好之后,在WordPress文本编辑器输入立刻下载,然后点击按钮包围文字,然后发布文章吧,然后去看看文章,点击下载按钮是不是进入了一个单独的页面。
纯代码给WordPress网站添加独立下载页面功能

后语

问:这里有几个再说下,每次添加文件下载的时候都需要输入那些自定义栏目?

答:其实只需要第一次使用的时候需要新建,从第二次开始就直接下拉就可以了,不需要重复输入的。

问:填写下载文件信息的时候可以不需要这样,像插件一样直接输入文件信息吗?

答:其实是可以的,但是这个不是本文的重点,所以没有写,如果想实现那种效果可以去看看云落之前分享的自定义栏目框架的文章。

问:可以使用多个下载地址吗?

答:完全可以的,在下载链接栏目输入多个A标签即可。

问:可以像插件一样分为百度网盘,360网盘,陈通网盘这样直接输入链接吗?

答:其实是可以的,但是这个不是本文重点,其实使用多个A标签一样可以实现类似的效果,如果像插件那样分网盘,只是多一些重复代码而已。

问:单页的那个download别名可以使用其他的吗?比如:xiazai?

答:不推荐修改别名,如果一定要修改别名,保持短代码里面的download和页面别名一样。
【Ps.手机打字,好累】

效果预览

这是文章页
纯代码给WordPress网站添加独立下载页面功能
这是下载单页
纯代码给WordPress网站添加独立下载页面功能


乐趣公园 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:纯代码给WordPress网站添加独立下载页面功能

将又拍云当作网盘的另类使用方法 Win 10 最完美最简单去除快捷方式小箭头方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_790814.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用Github Page 搭建个人博客网站

利用Github Page 搭建个人博客网站 转载请注明出处&#xff1a; http://blog.csdn.net/tzs_1041218129/article/details/53214497 http://www.54tianzhisheng.cn/Blog/html/blog_github.html (阅读效果最好) 更多精彩文章请关注微信公众号&#xff1a;猿blog 前言 最近这几天&a…

如何搭建个人网站

如何搭建个人网站&#xff08;二&#xff09; 2017年1月28日by 搬砖工 /0 406在上一篇文章中&#xff0c;博主为大家介绍了有关租赁服务器和连接服务器的步骤。接下来就给大家介绍一下如何在我们租用的服务器上面搭建我们需要的应用服务器和发布产品。本篇文章以nginx、tomcat搭…

12306一直显示服务器忙,网购春运火车票首日 12306网站又现服务器忙

①青岛火车站售票大厅内&#xff0c;购票回家的旅客已明显增多。②来自广西的杨先生和同伴们准备拎着行李提前回家。据了解&#xff0c;他们在船厂工作&#xff0c;由于天冷活少&#xff0c;所以提前放假了。③"小候鸟"在妈妈的背后等候进站上车。 本版图/记者 孙传浩…

茌平计算机中考成绩查询,最新:个人成绩查询中考成绩登录系统网站入口

阅读本文前&#xff0c;请您先点击上面的“疏密有致”&#xff0c;再点击“关注”&#xff0c;这样您就可以继续免费收到文章了。每天都会有分享&#xff0c;都是免费订阅&#xff0c;请您放心关注。注&#xff1a;本文转载自网络&#xff0c;如有侵权&#xff0c;请在后台留言…

iconfont 图标宽高出问题_icon图标网站分享

分享几个优秀的图标网站&#xff0c;小伙伴们可以自行取用哈~本文通过四个类别进行网站分享。类别1&#xff1a;icon图标网站1、iconfont链接地址&#xff1a;https://www.iconfont.cn/阿里巴巴图标矢量库&#xff0c;今年新增了插画库的功能&#xff0c;是众多设计师钟爱的图标…

北大网站服务器关闭,北京大学网络服务

&nbsp1、如何在Windows2000环境下配置静态IP地址第一步&#xff1a;选择“控制面板”&#xff0c;选择“网络和拨号连接”第二步&#xff1a;鼠标右键选择“本地连接”(或者相应的网卡名称)&#xff0c;选择“属性”第三步&#xff1a;选择“TCP/IP协议”第四步&#xff1a…

nextcloud linux源码有没有java版本的_如何使用Nextcloud 搭建个人网站

Nextcloud是一套用于创建网络硬盘的客户端&#xff0d;服务器软件。其功能与Dropbox相近&#xff0c;但Nextcloud是自由及开放源代码软件&#xff0c;每个人都可以在私人服务器上安装并运行它。与Dropbox等专有服务相比&#xff0c;Nextcloud的开放架构让用户可以利用应用程序的…

网站做好后不能用手机浏览吗_企业品牌网站建设要注意哪些细节

互联网行业蓬勃发展&#xff0c;要做好互联网营销&#xff0c;那么企业网站的一定不能少的&#xff0c;现在网站的类型各种各样&#xff0c;比如企业展示类、商城类、商务类、分享类等等&#xff0c;网站的类型有很多&#xff0c;但是对于企业来说&#xff0c;主要还是展示类和…

pygame.image.load()找不到图片_强烈种草的5款资源网站!每一款都有找不尽的资源!...

你们知道的资源网站有哪些呢&#xff1f;百度&#xff01;百度&#xff01;百度&#xff01;其实除了百度还有很多资源网站我们需要去慢慢挖掘&#xff0c;只是你不知道而已。今天小编就来和你扒一扒有哪些资源网站值得我们收藏&#xff0c;快来看看吧&#xff01;1. 虫部落快搜…

搜索引擎收录查询工具_影响网站收录的因素有哪些?

点上方蓝字关注我们在seo优化网站中&#xff0c;收录是很重要的数据&#xff0c;通过分析收录数据&#xff0c;可以诊断出网站存在的问题&#xff0c;帮助seoer不断调整优化策略。什么是网站收录?网站收录是指搜索引擎通过自己的算法&#xff0c;通过蜘蛛抓取&#xff0c;将网…

用html做网站古诗春思,春思

七言律诗皇甫冉春思莺啼燕语报新年&#xff0c; 马邑龙堆路几千。家住层城邻汉苑&#xff0c; 心随明月到胡天。机中锦字论长恨&#xff0c; 楼上花枝笑独眠。为问天戎窦车骑&#xff0c; 何时返旆勒燕然。Seven-character-regular-verseHuangfu RanSPRING THOUGHTSFinch-notes…

实验Linux之利用源代码——httpd网站搭建服务(阿帕奇)的安装

源码包安装一&#xff0c;下载源码包二、安装gcc、gcc-c、make三、解压并安装四、make 和make install五、修改配置文件与启动六、启动apache&#xff1a;七、最后一步&#xff0c;查看是否安装成功1&#xff0c;源代码包的一般封包格式&#xff1a;包名.tar.gz或者是包名.tar.…

实验Linux之利用rpm,yum——httpd网站搭建服务(阿帕奇)的安装搭建

安装位置&#xff1a;利用rpm安装的软件会有自己的默认安装路径 1、先查看自己的linux的版本 uname -a 为第七代版本 &#xff0c;安装软件要安装centos7的 2、网站搭建服务的对应软件名为httpd&#xff0c;登录网站进行查找&#xff0c;选择x64_64版本 https://pkgs.org/ 3…

360浏览器一直显示安全连接到服务器,360浏览器提示“您与此网站之间建立的连接不安全完美解决方法...

如果您是该网站的访客&#xff0c;请注意不要在该网站上输入任何敏感信息&#xff0c;更不要在线进行任何购买等交易&#xff0c;因为正规的网上商城网站都会使用 https 加密连接来保护用户的信息安全。安装了SSL证书的网站&#xff0c;好处很多&#xff0c;例如可以获得更好的…

mysql统计人数_网站访问统计系统 Matomo,基于 PHP5+MySQL,前身是Piwik

Matomo 的前身是 Piwik&#xff0c;是一套基于 PHP5MySQL 技术构建的开源网站访问统计系统。Matomo 可以给你详细的统计信息&#xff0c;比如网页浏览人数&#xff0c;访问最多的页面&#xff0c;搜索引擎关键词等等流量分析功能。此外&#xff0c;它还采用了插件扩展及开放 AP…

[转载]大型网站架构演变和知识体系

原文地址&#xff1a;http://www.blogjava.net/BlueDavy/archive/2008/09/03/226749.html 之前我简单向大家介绍了各个知名大型网站的架构&#xff0c;MySpace的五个里程碑、Flickr的架构、YouTube的架构、PlentyOfFish的架构、WikiPedia的架构。这几个都很典型&#xff0c;我们…

学用MVC4做网站一:用户

用户部分要实现的功能有&#xff1a; 序 一、用户 1.1用户注册 1.2用户登录 1.3修改密码 1.4修改资料 要实现这些目的首先新建用户&#xff08;Model&#xff09;模型 /// <summary>/// 用户模型/// </summary>public class User{[Key]public int UserId { get; se…

在线 pdf转html代码,快速建站的免费办法:在线PDF转HTML您得掌握!

代码对于我们这种小白来说简直就是一堆不认识的字母和符号&#xff0c;但是对于专业的程序员来说无疑就是他们的家常便饭。有时候小编还挺羡慕从事这项工作的人们&#xff0c;除了容易掉头发之外这个工作还是很令人尊敬的&#xff0c;毕竟科技越来越发达离不开码农们的奋战一搏…

InstantClick – 快速响应!让你的网站与众不同

尽管网络带宽不断增加&#xff0c;但网站并没有更快很多。这是因为最大的瓶颈在于页面加载的延迟。InstantClick 是一个很小的 JavaScript 库&#xff0c;大大加速你的网站响应速度。  在访问者点击一个链接之前&#xff0c;鼠标会悬停在链接上面&#xff0c;这两个事件之间通…

ASP.NET MVC5 网站开发实践(二) Member区域 - 用户部分(3)修改资料、修改密码

在上一篇博客中实现了用户的注销和登录&#xff0c;其实代码里落了点东西&#xff0c;就是用户登录要更新最后一次登录时间和登录IP&#xff0c;这次补上。今天做修改资料和修改密码&#xff0c;TryUpdateModel是新用到的东西。 目录&#xff1a; ASP.NET MVC5 网站开发实践 - …