• 欢迎访问奇跡の海网站,本站不上传任何资源,所有资源均来自于网络,欢迎加入奇跡の海~! QQ群
  • 本站下载资源为网络上收集整理而来,并且以计算机技术研究交流为目的,版权归原作者所有,仅供大家参考,学习,不存在任何商业目的与商业用途.
  • 本站系统镜像均来自于官方原版,ed2k可视为P2P下载链接。所有操作系统默认均为试用版,如有正版密钥可以有效激活,本站不提供任何激活和相关服务。

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

WP其他 奇跡の海 1年前 (2017-07-24) 276次浏览 已收录 0个评论 扫描二维码

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

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

前言

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

介绍

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

开始

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

第一步,增加页面

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

第二步,修改下载模板

首先打开 download.php 文件,将

<?php
get_header();
?>

替换为下面这段代码

<?php
/*
	template name: 下载模板页面
	description: template for WordPress theme
*/
get_header();
?>

然后在下面添加这短代码

<?php
$pid = isset( $_GET['pid'] ) ? trim(htmlspecialchars($_GET['pid'], ENT_QUOTES)) : '';
if( !$pid ) { wp_redirect( home_url() );}
$title = get_the_title($pid);
$values1 = get_post_custom_values('download_name',$pid);
empty($values1) ? Header('Location:/') : $theCode1 = $values1[0];
$values2 = get_post_custom_values('download_size',$pid);
empty($values2) ? Header('Location:/') : $theCode2 = $values2[0];
$values3 = get_post_custom_values('download_link',$pid);
empty($values3) ? Header('Location:/') : $theCode3 = $values3[0];
?>

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

            <h2>资源信息</h2>
			<div class="alert alert-success">
			<ul class="infos clearfix">
                <li>资源名称:<?php echo $theCode1; ?></li>
				<li>文件大小:<?php echo $theCode2; ?></li>
				<li>更新日期:<?php echo get_post($pid)->post_modified; ?></li>
				</ul>
			</div>
            <h2>下载地址</h2>
            <div id="filelink">
				<center><?php echo $theCode3; ?></center>
            </div>
			<div class="clearfix"></div>
            <h2>下载说明</h2>
			<div class="alert alert-info" role="alert">
            下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字
            </div>
            <h2>免责声明</h2>
			<div class="alert alert-warning" role="alert">
			免责声明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字, 下载说明文字
			</div>

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

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

新建页面

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

建立短代码

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

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

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

添加编辑器按钮

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

//添加编辑器按钮
function download_tags($mce_settings) {
?>
<script type="text/javascript">
QTags.addButton( 'hy_download', '下载按钮', '[pdownload]', '[/pdownload]' );
function download_shortcode() {
}
</script>
<?php
}
add_action('after_wp_tiny_mce', 'download_tags');

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

使用方法

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

这里做好之后,在 WordPress 文本编辑器输入立刻下载,然后点击按钮包围文字,然后发布文章吧,然后去看看文章,点击下载按钮是不是进入了一个单独的页面。
纯代码给 WordPress 网站添加独立下载页面功能


版权声明:本站所有文章和资源使用BY-NC-SA协议授权发布 , 转载应当以相同方式注明文章来自“SeaOMC.COM->纯代码给 WordPress 网站添加独立下载页面功能!在下边可以分享本文哦!
本文最后更新于2018年3月14日,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!
喜欢 (1)
[]
分享 (0)
奇跡の海
关于作者:
一个WordPress菜鸟!
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址