使用WImpress建立惊人的演示文稿

第一部分中 ,我们学习了如何将impress.js集成到WordPress中,以创建具有CSS过渡和转换的动态演示。 impress.js成为Github中最受欢迎的JavaScript库之一。

灵活性和结构良好的代码可能是其成功成为演示文稿生成库的原因。 在本教程中,我们将探讨在使用WImpress构建交互式演示时增强impress.js的默认功能的可能性。

我们通过使用impress.js集成的WordPress插件构建了非常基本的演示文稿,从而完成了本文的第一部分。 让我们通过为演示文稿创建一个选项面板来开始本教程。 我希望您已经在WordPress安装中激活了WImpress插件。 如果是这样,您可以在实施过程中继续更新同一插件的代码。

规划选项面板

设计在构建出色的演示文稿中起着至关重要的作用。 使用PowerPoint之类的工具时,取决于每个版本中的可用功能,演示文稿的设计可能会受到限制。 impress.js完全基于CSS和HTML构建,因此您可以自由地进行设计创新。 在本节中,我们计划实现一个基本选项面板,其中列出了两个选项。

  • CSS定制器
  • 背景图像(演示模板)

创建此选项面板的目的是让您知道如何为任何类型的WordPress插件构建基本的选项面板。使用CSS,您没有任何限制,您可以设计自己的选项面板并提供更多选项以满足您的需求。 因此,让我们开始吧。

创建选项页面

WordPress提供了在管理面板中创建不同类型页面的功能。 我们可以创建菜单页面作为主菜单项或子菜单项显示在左侧菜单中。 另外,我们也可以创建要在默认设置部分下显示的设置页面。 在这里,我们将使用菜单页面来配置WImpress插件的设置。 因此,让我们开始通过以下操作更新插件构造函数。

add_action('admin_menu', array($this, 'wimpr_presentation_settings_page'));

让我们看一下用于添加新菜单页面的wimpr_presentation_settings_page函数。

public function wimpr_presentation_settings_page() {
    	add_menu_page('WImpress Presentation Settings', 'WImpress Presentation Settings', 'administrator', 'wimpr_settings', array($this, 'wimpr_presentation_settings'));
}

在函数内部,我们调用WordPress add_menu_page来创建顶级菜单项。 第一个和第二个参数用于定义选项页面的页面标题和菜单标题。 第三个参数定义了显示菜单所需的功能。 我们需要提供一个唯一的子弹作为第四个参数。 最后一个参数定义用于显示选项面板内容的功能。 我们将使用wimpr_presentation_settings函数显示选项面板的表单字段。

您可以在http://codex.wordpress.org/Function_Reference/add_menu_page上查看add_menu_page函数的完整参数列表。

创建选项表格

一旦我们单击菜单项,WordPress将执行wimpr_presentation_settings函数。 因此,我们需要生成必要的HTML内容以显示在选项页面中。 以下代码说明了wimpr_presentation_settings函数的实现。

public function wimpr_presentation_settings() {


	$html = '<div class="wrap">

    	<form method="post" name="options" action="options.php">

    	<h2>Select Presentation Settings</h2>' . wp_nonce_field('update-options') . '
    	<table width="100%" cellpadding="10" class="form-table">           	 
        	<tr>
            	<td align="left" scope="row">
            	<label>Background Image</label>
            	</td>

            	<td><input type="text" name="wimpr_bimage" id="wimpr_bimage"
            	value="' . get_option('wimpr_bimage') . '" />
            	<input type="button" name="wimpr_image_btn"  id="wimpr_image_btn"
            	value="Upload" />
            	<div name="wimpr_bimage_preview"  id="wimpr_bimage_preview"><img style="width:100px;height:100px" src="' . get_option('wimpr_bimage') . '" /></div>

            	</td>
        	</tr>
        	<tr>
            	<td align="left" scope="row">
            	<label>Custom CSS</label>
            	</td>

            	<td><textarea style="width:500px;height:300px;" name="wimpr_css" id="wimpr_css">' . get_option('wimpr_css') . '</textarea></td>
        	</tr>
    	</table>


    	<p class="submit">
        		<input type="hidden" name="action" value="update" />  
        		<input type="hidden" name="page_options" value="wimpr_bimage,wimpr_css" />
        		<input type="submit" name="Submit" value="Update" />
    	</p>
    	</form>

	</div>';
	echo $html;
}

我们通过创建一个带有指向options.php页面的动作的表单来启动设置页面的HTML。 这使我们可以使用WordPress内置选项保存过程,而不是手动保存过程。 接下来,我们将背景图像字段定义为带有附加上载按钮和DIV容器的文本字段,以预览上载的图像。 在这里,我们使用get_option函数从wp_options表中检索现有值。 然后,我们定义另一个文本区域,用于为演示文稿添加自定义CSS样式。

现在,我们的选项面板有两个具有现有值的字段。 最后,我们定义了两个隐藏的字段,分别称为actionpage_options 。 由于我们使用的是现有的选项保存过程,因此必须具有此处提到的确切名称的这两个字段。 现场操作应具有用于处理表单提交的值更新。 然后,我们必须将要保存的每个表单字段的名称定义为page_options字段的逗号分隔值。 现在,我们可以单击Submit按钮将数据自动保存到wp_options表中。

上传背景图片

在上一节中,我们使用上载按钮创建了背景图像字段。 现在,我们必须允许用户使用此按钮上传图像。 因此,我们将把现有的WordPress Media Uploader集成到我们的上传按钮中。

首先,我们必须包含用于加载媒体上载器的必要脚本文件。 在插件构造函数中使用以下操作为WordPress管理员加载脚本文件。

add_action('admin_enqueue_scripts', array($this, 'wimpr_admin_scripts'));

现在我们来看看wimpr_admin_scripts函数,其中包含必要的脚本文件。

public function wimpr_admin_scripts() {
	wp_enqueue_script('jquery');

	if (function_exists('wp_enqueue_media')) {
    		wp_enqueue_media();
	} else {
    		wp_enqueue_style('thickbox');
    		wp_enqueue_script('media-upload');
    		wp_enqueue_script('thickbox');
	}

	wp_register_script('wimpr_init', plugins_url('js/wimpr_init.js', __FILE__), array("jquery"));
	wp_enqueue_script('wimpr_init');
}

WordPress 3.5使用wp_enqueue_media函数引入了新版本的Media Uploader。 因此,我们在将wp_enqueue_media函数加载到插件之前检查其是否存在。 如果它不可用,我们可以回wp_enqueue_script使用wp_enqueue_script语句加载Media Uploader的先前方法。 最后,我们包含一个自定义JavaScript文件,用于处理我们上传按钮的文件上传。

现在,让我们看一下用于处理图像上传的wimpr_init.js文件。

jQuery(document).ready(function(){
	jQuery("#wimpr_image_btn").click(function(){
    		if ( typeof wp !== 'undefined' && wp.media && wp.media.editor )
        			wp.media.editor.open("wimpr");
   	 
    		var wimpr_image_btn = jQuery(this);
    		var send_attachments = wp.media.editor.send.attachment;

    		wp.media.editor.send.attachment = function(props, attachment) {
      	 
        			jQuery("#wimpr_bimage").val(attachment.url);
        			jQuery("#wimpr_bimage_preview").html("<img style='width:100px;height:100px;' src='"+attachment.url+"' />");


        			wp.media.editor.send.attachment = send_attachments;
    		}

    		wp.media.editor.open();

    		return false;   
	});
});

单击该按钮后,我们通过为wp.media.editor.open函数提供唯一的ID来打开媒体上传器。 然后,我们将原始媒体附件功能分配到一个名为send_attachments的变量中,以避免与自定义媒体上载器发生冲突。 接下来,我们为上载按钮定义自定义发送附件功能。

我们使用attachment.url .url获取上载文件的路径,并将其分配给文本字段作为背景图像。 接下来,我们将与图像相同的URL分配给预览DIV容器。 最后,我们使用send_attachments变量恢复原始的发送附件功能。

完成上传处理代码后,我们现在可以使用上传按钮上传图片。 上传图像后,我们必须单击“ 插入页面”按钮,URL和预览将显示在设置页面中。

应用演示设置

到目前为止,我们已经创建了一个基本设置部分,其中包含背景图片和用于演示步骤的自定义CSS。 现在,我们必须将这些数据应用于实际演示中。 让我们更新single-wpresentations.php文件以包含设置。

< ?php
        	$style[0] = (get_option('wimpr_bimage') != "") ? "background-image: url('" . get_option('wimpr_bimage') . "')" : "";

?>
<style>
        	body{
            	font-size:12px;
        		< ?php echo $style[0]; ?>
    	}

    	< ?php echo get_option('wimpr_css'); ?>
</style>

首先,我们使用从get_option函数获取的wimpr_bimage选项值为背景图像准备必要的样式。 背景图像的样式应用于HTML页面的正文。 接下来,我们使用wimpr_css键从wp_options表中获取自定义CSS数据,并将其应用于style元素中。 现在,我们已经通过设置页面完成了WImpress插件的实现。

您可以根据自己的喜好添加更多设置。 我想知道您希望此插件还有哪些其他设置。 因此,请使用评论部分让我知道。

在本节中,我们将使用在本教程中创建的插件来构建高级演示文稿。 演示文稿旨在说明SitePoint网络中的各种教程和类别。 让我们使用以下链接查看最终演示文稿的预览。

演示– http://goo.gl/oMuO8c

让我们开始吧。

步骤1 –配置演示文稿设置

我们可以通过配置演示文稿的设置来开始该过程。 为演示模板选择您喜欢的背景图像,然后通过单击“ 上传”按钮上传它,最后在上传后单击“ 插入页面”按钮。

然后,我们必须提供用于文本区域内演示文稿的自定义CSS。 用于此演示文稿的完整样式集很长,因此,我不会在本教程中包括它。 您可以在源代码文件夹中找到所有样式。 现在,您的设置屏幕应如下图所示。

设定画面

步骤2 –建立简报

现在,您可以使用左侧菜单上的Impress Presentation项目来创建演示文稿。 使用一个有意义的名称,然后单击“ 发布”按钮以保存演示文稿。

步骤3 –建立第一步

第一步,我们将把SitePoint标题及其徽标和小标签行包括在内。 使用“ 印象步骤”部分创建演示文稿的第一步。 添加唯一的标题和以下代码作为内容。

<img src="http://localhost/wordpress-web-develop-test/wp-content/uploads/2013/09/logo.png" />
<p class="title1">Sitepoint</p>
<p class="title2">Cutting-edge content for web professionals</p>

根据您的WordPress安装,确保具有正确的映像路径。 然后选择表示名称,并为此步骤添加必要的CSS类。 在这里,我将使用名为banner的类来设置第一步的样式。 接下来,将data-x定义为-1000,将data-y定​​义为0,作为演示的起点。 最后,单击“ 发布”按钮。

现在转到Impress Presentations列表,然后单击先前创建的演示文稿的视图链接以将其加载到浏览器中。 您应该得到类似于下图的内容。

SitePoint徽标

步骤4 –创建第二级步骤

现在,我们将创建教程类别作为SitePoint的子级别。 因此,它们将被放置在第一步之下。 我们可以增加data-y值以将步长移至屏幕底部,而减小data-x值将使步长移至屏幕左侧。 以下代码显示了用于此步骤的HTML。 必要的CSS样式位于“设置”部分。

<img src="http://localhost/wordpress-web-develop-test/wp-content/uploads/2013/09/php.png" />

与往常一样,从列表中选择相同的表示形式,并将CSS类定义为post-category 。 最后,在单击“ 发布”按钮之前,将data-x值设置为-1500,将data-y值设置为800。 现在,再次加载演示文稿,并使用空格键或箭头键进行导航。 您应该得到类似于下图的内容。

PHP图标

步骤5 –将教程创建为多维数据集

现在,通过教程进入演示的第三级。 在这里,我们将构建一个包含六个教程信息的多维数据集,并将其放置在远离步骤2的位置。现在,考虑以下用于教程步骤的HTML结构代码。

<div class="iauthor">
	<img src="http://localhost/wordpress-web-develop-test/wp-content/uploads/2013/09/auth1.jpeg" />
	<div class="iauth_name">Rakhitha Nimesh</div>
</div>

<div class="ipost_title">
	<p class="ipost_header">Integrating impress.js into WordPress</p>
</div>

<div style="clear:both"></div>
<div class="ipost_content">Tutorial Summery.</div>

所有教程步骤均使用相同的结构,并带有已修改的值。 与往常一样,选择演示文稿并将CSS类定义为post。 接下来,保持data-x值为-2000,data-y值为2500,以使step3远离step2。 现在,您应该具有类似于下图的内容。

文章摘要

现在,我们必须以类似的方式为PHP类别构建多维数据集的其余五个步骤。

多维数据集的第2步 -data-x = -1750,data-y = 2500,data-z = -250,data-rotate-y = 90
在这里,我们使用data-z值来提供立方体的深度。 同样,此步骤沿Y轴旋转90度以构建立方体。

在初始阶段,通过考虑值很难理解多维数据集的构建方式。 因此,请确保使用impress.js,直到您了解如何正确定位元素为止。

多维数据集的第3步 -data-x = -2000,data-y = 2500,data-z = -500,data-rotate-y = 180
在第3步中,我们将在Y轴上旋转90度的同时增加深度。

多维数据集的第4步 -data-x = -2250,data-y = 2500,data-z = -250,data-rotate-y = 270

多维数据集的第5步 -data-x = -2000,data-y = 2250,data-z = -250,data-rotate-x = 90
在第5步中,我们使用data-rotate-y属性通过跨X轴旋转来放置多维数据集的顶部。

多维数据集的第6步 -data-x = -2000,data-y = 2750,data-z = -250,data-rotate-y = 270

现在,我们已经完成了PHP类别的所有三个层次的演示。 现在,我们必须完成JavaScript和Design类别的相同过程。 因此,请使用与步骤2类似的代码为JavaScript创建类别步骤,以开始该过程。完成所有三个类别后,您将获得与以下内容类似的图像。

类别图标

现在,您必须继续此过程,直到设计了所有三个类别的多维数据集为止。 您可以在源代码文件夹中找到其余步骤的属性值和内容。

http://goo.gl/oMuO8c中找到最终演示的演示

http://goo.gl/TdT1xZ下载源代码

包起来

在这个分为两部分的教程中,我们创建了一个基本的WordPress插件,用于将impress.js集成到WordPress中以自动执行演示步骤。 您可以看到为什么使用CSS3过渡和转换将impress.js视为最强大的演示文稿创建库之一。

我们通过使用此插件创建简单而时尚的演示文稿来完成了本教程。 使用impress.js建立演示文稿没有任何限制。 因此,您可以通过设计出色的演示文稿来将创意付诸实践。

希望能听到您的建议,并在评论部分看到一些精彩的演示。

From: https://www.sitepoint.com/building-amazing-presentations-wimpress/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值