这是该系列的第三篇文章,到目前为止,我已经讨论了Titan框架的重要性和功能以及基本设置。 在第一篇文章中,我讨论了Titan框架的三步设置,如下所示:
- 设置您的项目。
- 创建选项。
- 获取价值。
我在上一篇文章中解释了第一步,我们了解到Titan框架是一个即插即用框架,即它作为插件提供,尽管也可以通过将其嵌入到Web开发项目中来进行集成。 因此,让我们从我停下的地方继续,继续接下来的两个步骤。
在这里,我将解释Titan框架在您的Web开发项目中的工作方式和作用。 然后,我将跳到创建实例和选项的概念,从中我将在前端获得保存的值 。 所以,让我们开始吧!
1.建立您的专案
首先,让我们找出实现今天的教程所需的条件。 我们将创建一个简单的WordPress主题,我们将使用Titan框架探索它可以创建的不同选项集。 你需要:
- 本地WordPress设置,例如,我使用DesktopServer (相信我,太神奇了!)。
- 一个基本的WordPress主题-我将为此目的使用Neat 。 我为本教程创建了一个名为Neat:TitanFramework的新分支。
我的设定
当我要使用Neat WordPress主题时 ,首先解释其结构很重要。 在您的文本编辑器中打开主题文件夹,在该文件夹中,我在资产目录中创建了一个名为admin的新文件夹。 其目的是处理所有与管理员选项相关的代码。 它是另一个目录titanframework , 还有一个PHP文件admin-init.php 。
讯享网
admin-init.php文件
此PHP文件将处理所有与管理员相关的活动。 如果滚动浏览其代码,您会发现我使用了get_template_directory ()函数来包含titanframework目录中的四个文件。 以下代码是不言自明的,但是我将在短时间内解释每个文件的用途。
这是admin-init.php的代码:
<?php / * Admin related initializations */ / * Titan Framework Required to be installed * * It adds Titan Framework as a plugin * * https://www.titanframework.net/get-started/ */ if ( file_exists( get_template_directory() .'/assets/admin/titanframework/titan-framework-checker.php') ) { require_once( get_template_directory() .'/assets/admin/titanframework/titan-framework-checker.php' ); } / * Create an options via Titan Framework * * http://www.titanframework.net/get-started/ */ // Admin panel options. if ( file_exists( get_template_directory() .'/assets/admin/titanframework/adminpanel-options-init.php') ) { require_once( get_template_directory() .'/assets/admin/titanframework/adminpanel-options-init.php' ); } // Metabox options. if ( file_exists( get_template_directory() .'/assets/admin/titanframework/metabox-options-init.php') ) { require_once( get_template_directory() .'/assets/admin/titanframework/metabox-options-init.php' ); } // Customizer options. if ( file_exists( get_template_directory() .'/assets/admin/titanframework/customizer-options-init.php') ) { require_once( get_template_directory() .'/assets/admin/titanframework/customizer-options-init.php' ); }
讯享网
目录称为titanframework
前面已经讨论过,Titan Framework可帮助您创建管理面板和选项卡,元框和主题定制程序部分和面板。 因此,我为每个文件创建了单独的文件。 显然,可以使用单独的代码行创建它们。 我将在我即将发表的文章中讨论每一个这些文件,但是现在您只需要了解这些文件的用途。
-
titan-framework-checker.php:负责在您的主题中包含Titan框架。 -
adminpanel-options-init.php:包含用于创建管理面板和带有一组选项的选项卡的代码。 -
metabox-options-init.php:包含用于为帖子类型创建带有其中一组metabox-options-init.php的代码。 -
customizer-options-init.php:包含用于创建主题自定义面板和带有一组选项的部分的代码。
包括admin-init.php文件
到目前为止,您肯定想知道为什么我创建了这么多新文件。 为什么我不只是将所有代码添加到functions.php文件中? 好吧,我认为这不是一种好的架构设计方法。 要构建可维护的产品,您需要定义一个好的设计模式。
用这么多行代码弄乱您的functions.php文件的意义是什么? 我自己经历过:在任何开发项目结束时,代码都变得如此庞大,以至于很难在一个文件中处理所有代码,尤其是在调试和修复错误时。 最好创建单独的文件,因此请将这些文件视为模块。
让我们在functions.php文件中包含admin-init.php 。
讯享网<?php / * Include admin-init.php * * File responsible for all admin relevant activity E.g. Settings & Metaboxes etc. */ if ( file_exists( get_template_directory() .'/assets/admin/admin-init.php') ) { require_once( get_template_directory() .'/assets/admin/admin-init.php' ); }
在这里,我通过相同的get_template_directory ()和require_once()函数添加了admin-init.php文件。
至此,我们已经了解了主题的基本设置,我将用它来解释Titan框架是如何工作的。 我们已经完成了设置并将其嵌入WordPress主题中的Titan框架。 让我们创建一个带有选项的管理面板,并获取前端的值。
使用Titan框架
要使用Titan Framework,您需要遵循特定的工作流程:
- 每个文件创建一个Titan框架实例。
- 创建管理面板/选项卡,元框或主题自定义器部分/面板。
- 在其中创建选项。
- 获取价值。
首先让我编写用于此目的的代码段。 这是adminpanels-options-init.php文件的代码,该文件位于assets/admin/titanframwork/目录中。
<?php / * Creating admin panel options via Titan Framework. * * Getting started: http://www.titanframework.net/get-started/ * Admin Panel: http://www.titanframework.net/admin-panels/ * Admin Tabs: http://www.titanframework.net/admin-tabs/ * Options: http://www.titanframework.net/docs/ * Getting Option Values: http://www.titanframework.net/getting-option-values/ */ / * `tf_create_options` is the hook used to create options. */ add_action( 'tf_create_options', 'aa_options_creating_function' ); function aa_options_creating_function() { // Initialize Titan with your theme name. $titan = TitanFramework::getInstance( 'neat' ); / * First Admin panel. */ / * Create admin panel options page called `$aa_panel`. * * This is a first admin panel and is called by its name i.e. `$aa_panel`. */ $aa_panel = $titan->createAdminPanel( array( 'name' => 'Neat Options' // Name the options menu ) ); / * Create the options. * * Now we will create options for our panel that we just created called `$aa_panel`. */ $aa_panel->createOption( array( 'id' => 'aa_txt', // The ID which will be used to get the value of this option. 'type' => 'text', // Type of option we are creating. 'name' => 'My Text Option', // Name of the option which will be displayed in the admin panel. 'desc' => 'This is our option' // Description of the option which will be displayed in the admin panel. ) ); / * Save button for options. * * When creating admin panel options, use this code to add an option "Save" button * since there is no other way for user to save the options.Your users can now save * (and reset) the options we just created. */ $aa_panel->createOption( array( 'type' => 'save' ) ); }
从一开始,我就从Titan框架文档中添加了一些帮助链接。 现在,我将逐行解释此代码。
17号线
在这里,我们有一个名为tf_create_options的钩子,该钩子用于使用aa_options_creating_function()函数通过Titan框架创建选项。
第19行
我们创建了一个名为aa_options_creating_function()的函数,该函数将负责创建这些选项。
22号线
在第22行,我为Titan Framework创建了一个实例 。 创建实例是该框架不可或缺的一部分,无论何时需要与Titan框架进行交互,都必须在每个文件中创建一个实例。 要使实例唯一,可以在其中添加产品名称。 例如,我添加了“整洁”作为参数。
获取Titan框架的实例
创建Titan框架的实例非常简单。 我们得到了一个独特的实例来避免任何混乱,以防万一另一个插件正在使用Titan Framework创建选项。 作者指出:
getInstance函数创建/获取特定于“ mytheme”的Titan框架的唯一实例。 这是我们将用于确保我们的设置不会与使用Titan Framework的其他插件冲突的
namespace 。 确保将其更改为您的主题或插件名称。
这是使用Titan实例的代码示例。
讯享网$titan = TitanFramework::getInstance( 'my-theme' );
在我的情况下 主题我将使用neat的参数 代替 my-theme ,使我的代码唯一,即
$titan = TitanFramework::getInstance( 'neat' );
第33–35行
这些行将创建一个管理面板,我将其命名为“ $ aa_panel”。 Titan Framework有助于在项目中创建诸如管理面板,管理选项卡,元框和主题定制器面板之类的部分。 但是目前,我仅以创建管理面板为例来说明问题。
这些代码createAdminPanel() Titan框架中调用我们的createAdminPanel()函数,该函数形成一个数组。 此功能将在WordPress仪表板中添加一个名为Neat Options的新部分。
上图是WordPress仪表板的屏幕截图,您可以在管理面板中找到一个新部分。
总结一下到目前为止的工作:我已经建立了Web开发项目,然后向其中添加了一个实例,然后创建了一个管理面板。
现在,如果我单击“ 整洁的选项” 按钮,则此部分为空。 因此,现在我将在此新创建的管理面板中创建选项。
在Titan框架中创建选项
首选可自定义的WordPress主题,因为最终用户通常希望在不编写任何代码的情况下配置主题。 通过在主题开发过程中添加灵活的选项,可以实现这一点。
我们可以在单独的管理面板中,主题框定制工具中的元框或选项面板中添加此类选项。 选项用于存储以后在前端检索的值的目的。

第42–47行
现在看一下这些代码行。 这些将用于在管理面板或标签中创建选项。 第42 createOption() $aa_panel定义了createOption()函数。 该函数再次是一个带有某些参数的数组,该数组带有id,类型,名称,描述等某些参数。根据这些行,我创建了一个选项,该选项是一个文本字段,名为My Text Option 。
这是屏幕快照,显示了在“ 整洁的选项”面板中创建的选项 。
56-58行
代码的最后两行在此面板中创建另一个选项。 但其目的是保存设置。 例如,在“ 我的文本选项”字段中,用户用John Doe填充它。 这意味着用户要更改默认设置,只有在用户保存自定义设置时才可以更改。
因此,我再次使用createOption()函数并为参数分配了“ type = save ”的值。
这是我到目前为止所做的开发的最终屏幕截图。
至此,您已经设置了所有Titan框架,创建了一些选项来获取动态结果,现在剩下要做的就是从最初设置的选项中获取值。 在三步式标语中,我已经讨论了前两篇文章中的前两个。 因此,现在让我们进入Titan框架工作的最后一个,也是最重要的部分。
获得价值
创建选项是在后端完成的,现在我们需要根据最终用户设置的那些选项来检索值,以便在前端使用它们。 我们可以通过一个简单的函数getOption()来检索针对选项设置的值。
以下是用于检索保存的值的代码的基本结构:
讯享网<?php function myFunction() { $titan = TitanFramework::getInstance( 'my-theme' ); $myTextOption = $titan->getOption( 'my_text_option' ); // Do stuff here. }
因此,我创建了一个名为myFunction的函数,该函数首先注册了Titan的一个实例。 注册实例是重要的一步,因为它获取Titan框架为您的设置创建的对象注册在变量$titan 。 您可以看到我们的实例特定于我们的主题,即my-theme ,它应该是我们的主题名称或任何唯一的名称。
在前端检索值
让我们使用针对前端选项设置的值。 我创建了一个空白的自定义页面模板。 如果引用Neat主题文件夹,则在根目录中会找到一个名为aa_titanframework.php的文件。 您也可以对主题进行相同的操作。
在文本编辑器中创建一个新文件 ,然后复制并粘贴以下代码行。
<?php /* Template Name: Titan Framework */ get_header(); / * First Admin panel. */ // We will initialize $titan only once for every file where we use it. $titan = TitanFramework::getInstance( 'neat' ); $aa_txt_val = $titan->getOption( 'aa_txt' ); ?> <div class="aa_wrap"> <h1><?php the_title( ); ?></h1> <div class="aa_content"> <?php / * First Admin panel options. */ // Print the value saved in `aa_txt` option. echo $aa_txt_val; // Let's use this value in HTML. ?> <h3><?php echo $aa_txt_val; ?></h3> </div> </div> <?php //get_sidebar(); get_footer(); ?>
在解释上述代码之前,请确实参考上一篇文章的代码,在该文章中我创建了管理面板及其选项,因为这里我也使用相同的名称,ID等。
该代码的前四行用于WordPress注册此自定义页面模板,这是非常标准的—那里没有火箭科学。
获取期权价值
我将在adminpanel-options-init.php获得在adminpanel-options-init.php文件中创建adminpanel-options-init.php (有关其代码,请参见上一篇文章)。 需要完成两个步骤:
- 获取唯一的Titan Framework实例并将其保存到变量。
- 使用
getOption()函数通过ID获取值。
12号线
第一步之后,我对变量$titan初始化了一个唯一实例,对于使用它的每个文件,它只初始化一次。 我的实例是唯一的,因为我将其命名为neat ,即主题的程序包名称-您可以将其命名为任何唯一的名称。 因此,如果某个插件正在使用Titan且您的主题也在使用它,则必须有一种方法来区分该插件设置的选项和您的主题。
讯享网$titan = TitanFramework::getInstance( 'neat' );
14号线
第二步是利用ID并获取该选项的保存值。 该行的代码是:
$aa_txt_val = $titan->getOption( 'aa_txt' );
我检索了aa_txt的值,该值保存在变量$aa_txt_val 。 aa_txt参数指的是我在第一个管理面板中创建的选项的ID(请参阅上一篇文章)。
因此,到目前为止,我已经设置了基本结构来获取保存的值。 现在,让我们在前端使用保存的值。
第22–35行
这些代码行用于在前端显示保存的值。 看一下第29行,我在这里使用echo命令获取输出。 在第35行进行了相同的操作,但是这次我以H3(标题3)格式显示$aa_txt_val的输出。 因此,现在最终用户为此选项设置的任何值都将显示在前端。
结果
为了显示上述代码的结果,请按照下列步骤操作:
- 转到您的WordPress 仪表板
- 通过页面>添加新页面创建新页面 。
- 将页面命名为Titan Framework (可选,您会知道的)
上面的屏幕截图显示了我创建的页面。 同时,您还可以找到新的管理面板菜单,即Neat Options ,我们在其中创建了选项。
接下来,在发布页面之前,为其选择页面模板,即Titan Framework 。
aa_titanframework.php文件添加了一个称为“ Titan Framework”的新页面模板,该模板显示在下拉列表中。 选择该模板。
- 发布页面。
- 接下来转到“ 整洁的选项”菜单,并为名为“ 我的文本选项”的选项添加一些值。
该图显示我已经用AA-Text-Option填充了该字段,然后单击Save Changes 。
- 返回“ Titan框架”页面并查看该页面。
上图显示了最终结果。 这是 Titan框架页面。 以两种不同形式显示aa_txt已保存选项值(即AA-Text-Option)。 第一个是段落格式,第二个是h3格式。
结论
现在您知道如何设置它,创建一些选项并获取保存的值; 尝试一下,如有任何疑问,请通过评论让我知道,或者在Twitter上与我联系。
在本系列的下一篇文章中,我们将探索可以使用Titan Framework创建的选项集以及如何使用它们。
翻译自: https://code.tutsplus.com/articles/a-beginners-guide-to-titan-framework-how-titan-works--cms-24151
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/64841.html