색상 유형 및 업로드 유형 옵션 추가: Titan Framework에 대한 초보자를 위한 단계별 가이드
WordPress 테마에 동적 색상 옵션을 추가하는 것은 매우 일반적입니다. Titan Framework를 사용하면 색상 옵션을 만들 수 있습니다. Titan 프레임워크를 사용하여 관리자 패널, 메타 상자 또는 테마 사용자 정의 섹션에 색상 선택기를 추가하는 방법을 살펴보겠습니다.
Titan Framework의 색상 유형 옵션
Titan 프레임워크에는 아래와 같이 color
유형 필드가 있습니다.
이 옵션은 원하는 색상을 선택할 수 있는 전체 색상 팔레트를 로드합니다. Titan Framework에 이 옵션을 추가하려면 해당 옵션이 전달하는 매개변수를 이해해야 합니다. 이러한 매개변수는 다음과 같습니다.
- Name: 옵션의 표시 이름을 제어합니다.
- id: 이 매개변수는 저장된 옵션 값을 검색하기 위해 프로세스 전반에 걸쳐 사용되는 고유한 이름을 할당합니다.
- desc: 이 매개변수는 옵션 이름과 함께 간단한 설명을 추가합니다.
-
default: 기본값
color
값을 설정합니다. - 실시간 미리보기: (선택 사항) 테마 사용자 정의 섹션 내 변경 사항의 실시간 미리 보기를 표시하는 데 도움이 됩니다.
-
css: (선택 사항) 관리 페이지 및/또는 테마 사용자 정의 섹션에
color
옵션을 추가하면 자동으로 CSS가 생성됩니다.
이 모든 매개변수의 공통점은 유형, 즉 String입니다.
색상 유형 옵션에 따라 사용 가능한 용기
이 옵션은 다음 영역에 추가될 수 있습니다:
- 관리자 패널
- 탭 관리
- 메타박스
- 테마 사용자 정의 섹션
텍스트 영역 옵션은 어떻게 생성되나요?
다음 단계에 따라 컨테이너 내에 color
유형 옵션을 만드세요.
-
getInstance()
함수를 통해 인스턴스를 가져옵니다. -
createOption()
기능을 통해 옵션을 생성하세요. -
getOption()
함수를 통해 저장된 값을 가져옵니다.
이러한 컨테이너 생성에 대해 알아보려면 이전 기사를 참조하세요.
관리자 패널에서 색상 유형 옵션 만들기
선언 예시
먼저 관리자 패널에 color
유형 옵션을 만듭니다.
관리자 패널 $aa_panel
에 $aa_panel
中创建了一个 color
类型选项。然后,通过 createOption()
函数,我添加了一个 color
类型选项,其 ID 为 aa_color
。该函数采用选项类型支持的参数数组。因此,会相应地使用 id、type、name、desc 和默认参数。请注意 id 的值,即aa_color
유형 옵션을 만들었습니다. 그런 다음
aa_color
인 유형 옵션을 추가했습니다. 이 함수는 옵션 유형에서 지원하는 인수 배열을 사용합니다. 따라서 id, type, name, desc 및 기본 매개변수가 그에 따라 사용됩니다. id 값(예: aa_color
)은 항상 고유해야 합니다.
위 스크린샷은 color
Neat Options관리 패널에 있는 My Color Option
옵션을 보여줍니다.
사용예
저장된 옵션값을 구해봅시다. get<em></em>Instance()
函数获取唯一实例。然后使用 getOption()
函数,并将 color
类型选项的 ID 注册为参数。将其值保存到新变量 $aa_color_val
中,然后在前端 echo
으아악
get<h4></h4>Instance()
함수를 통해 고유한 인스턴스를 가져옵니다. 그런 다음 함수를 사용하여 #cecece
유형 옵션의 ID를 매개변수로 등록합니다. 해당 값을 새 변수 $aa_color_val
에 저장한 다음 이 변수를 프런트 엔드에 에코
합니다.
프런트엔드에 결과 표시
같은 색상을 선택하고 그 값을 저장한다고 가정해 보겠습니다.
이제 코드에 따라 선택한 색상의 16진수 값이 아래와 같이 인쇄됩니다.
이 글의 뒷부분에서 이 옵션을 스타일 속성으로 사용하는 방법도 보여드리겠습니다.프로덕션 테마에서는 이렇게 인쇄하지 않고 대신 인라인 스타일로 사용하거나 Titan Framework를 사용하여 자동으로 CSS 파일을 생성하지만 이에 대해서는 시리즈 후반부에서 논의할 예정이며 이 내용의 범위를 벗어납니다. 이 기사.
$aa_tab1
内创建了一个 color
类型选项。该选项的 ID 为 aa_color_in_tab1_panel2
관리 탭에서 색상 유형 옵션 만들기
$aa_tab1
에 🎜 유형 옵션을 만들었습니다. 이 옵션의 ID는 aa_color_in_tab1_panel2
이며 고유해야 합니다. 🎜
您可以在管理的选项卡 1 中找到 color
选项面板Neat Options 2。
用法示例
现在我将获取保存的选项值。
<?php // 1. Get the titan framework instance and save it to a variable $titan = TitanFramework::getInstance( 'neat' ); // we will initialize $titan only once for every file where we use it. // Value of tab. $aa_color_in_tab1_panel2_val = $titan->getOption( 'aa_color_in_tab1_panel2' ); /** * * Print Admin tab options * */ <div> Value of my color is : <?php echo $aa_color_in_tab1_panel2_val; ?> </div>
我将通过 getInstance()
函数获取一个实例,然后使用 getOption()
函数。在此函数(第 5 行)内,我输入 ID aa_color_in_tab1_panel2
作为其参数。最后,我创建了一个div并以文本形式打印了保存的值。
在前端显示结果
这次我选择了 #0bc47d
作为我的颜色值。因此,输出将像这样打印:
在 Metabox 内创建颜色类型选项
声明示例
<?php /** * * Create the options for metabox * */ $aa_metbox->createOption( array( 'id' => 'aa_mb_color', // The ID which will be used to get the value of this option 'type' => 'color', // Type of option we are creating 'name' => 'My Color 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 'default' => '#fffff' // Default value of the option which will be displayed ) );
现在,我将通过 createOption()
函数在元框 $aa_metbox
中创建一个 color
类型选项。该选项的 ID 为 aa_mb_color
,用于检索保存的选项值。元框出现在所有帖子/页面编辑屏幕上。
您可以在页面编辑结束时显示的元框中找到 color
类型选项屏幕。
用法示例
接下来我将获取选项值。
<?php // 1. Get the titan framework instance and save it to a variable $titan = TitanFramework::getInstance( 'neat' ); // we will initialize $titan only once for every file where we use it. /** * * Getting Values. * * Notice the use of get_the_ID(). It is because metabox is created for all * the post types we defined. TO get the value of a metabox option for a specific page/post * we need to give getOptions() function the ID of our post/page. Which is done like this. * */ $aa_mb_color_val = $titan->getOption( 'aa_mb_color', get_the_ID() ); /** * * Print metabox options * */ <div class="aa_content" style= "background: <?php echo $aa_mb_color_val; ?>;"></div>
现在,这段代码与为管理面板和选项卡编写的代码有些不同。但是,getInstance()
和 getOption()
函数的使用是相同的。差异在于第 13 行,其中 getOption()
函数带有两个参数:
-
aa_mb_color
,颜色类型选项ID -
get_the_ID()
函数,返回当前帖子/页面/帖子类型的 ID
接下来看第 19 行,我在 div 中使用了内联 CSS 样式。这意味着 color
类型选项的值在前端显示为颜色。
在前端显示结果
我选择 #ffff00
作为我的十六进制颜色值并发布了该页面。这是我得到的:
现在您可以在上面的屏幕截图中看到保存的值显示为颜色,并且整个 div 更改其背景颜色.
在主题定制器中创建颜色类型选项
声明示例
<?php /** * * Create the options for $aa_section1 * */ // Body bg color $aa_section1->createOption( array( 'id' => 'aa_sec_body_bg_clr', // The ID which will be used to get the value of this option 'type' => 'color', // Type of option we are creating 'name' => 'Site Background Color',// Name of the option which will be displayed in the admin panel 'default' => '#fff' // Default value of our option ) );
createOption()
函数在主题定制器部分 $aa_section1
中添加 color
类型选项。该选项的ID是aa_sec_body_bg_clr
,用于设置body背景颜色。
屏幕截图显示了一个名为网站背景颜色的 color
选项定制器面板我的部分。
用法示例
最后,我将获得保存的选项值。
<?php // 1. Get the titan framework instance and save it to a variable $titan = TitanFramework::getInstance( 'neat' ); // we will initialize $titan only once for every file where we use it. // Body bg color $aa_sec_body_bg_clr_val = $titan->getOption( 'aa_sec_body_bg_clr' ); /** * * Print customizer options * */ <style> /* ---------------------------------------------------------------------------- * CSS values from customizer * ------------------------------------------------------------------------- */ body{ background: <?php echo $aa_sec_body_bg_clr_val; ?> !important; } h1, h2, h3, h4, h5, h6, a, </style>
一切都几乎相同,除了我通过 <style>
标记内的内部 CSS 样式获取保存的值(第 12 到 28 行)。第 16 行显示了 echo
命令,该命令打印变量 $aa_sec_body_bg_clr_val
的值。
在前端显示结果
这次我选择 #eeee22
作为 color
的十六进制值。所以,这是实时预览:
我的网站背景颜色从 #ffffff
更改为 #eeee22
。酷!
上传文件
图像在使您的网络内容引人入胜且引人注目方面发挥着至关重要的作用。 WordPress 架构提供了 CPT(自定义帖子类型),用于通过媒体库添加图像。但是如果您想在其他地方添加图像上传器怎么办?
创建此类选项的方法有多种,而 Titan Framework 还提供图像上传器作为其选项类型之一。因此,让我们看看如何使用几行代码在管理面板、元框或主题定制器部分中添加媒体上传选项。
Titan Framework 中的上传类型选项
Titan Framework 中有一个 upload
类型选项,可添加不同格式的图像文件,例如jpg、jpeg、gif、png 等。看起来像这样:
此选项具有以下一组参数:
-
名称:此参数显示
upload
选项的名称。 - id:它指定一个唯一的名称,用于获取保存的选项值。
- desc:它添加带有选项名称的一行描述。
-
大小:(可选)此参数定义可在
css
参数(稍后解释)中使用的图像大小。它仅采用wp_get_attachment_image_src()
函数的$size
参数中定义的值(了解更多信息)。 - 默认:(可选)设置默认图像。
- livepreview:(可选)您可以使用此参数在主题定制器部分中找到更改的实时预览。
-
css:(可选)当您在管理页面和/或主题定制器部分添加
upload
类型选项时,它会生成 CSS。 - 占位符:(可选)当此选项类型为空时,此参数会显示虚拟文本。
上传类型选项的可用容器
可以在内部添加 upload
类型选项:
- 管理面板
- 管理选项卡
- 元框
- 主题定制器部分
如果您想了解有关这些容器的创建的更多信息,请浏览本系列之前的文章。
但是,此选项是通过以下步骤添加的:
- 调用
getInstance()
函数。 - 通过
createOption()
函数创建选项类型。 - 通过
getOption()
函数获取保存的选项值。
在管理面板中创建上传类型选项
声明示例
让我们编写它的代码。
<?php /** * Create the options * * Now we will create options for our panel that we just created called $aa_panel * */ $aa_panel->createOption( array( 'id' => 'aa_img_id', // The ID which will be used to get the value of this option 'type' => 'upload', // Type of option we are creating 'name' => 'My Upload 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 ) );
我将通过 createOption()
函数在管理面板 $aa_panel
中添加一个 upload
类型选项。该函数采用一系列参数,例如id、type、name和desc。保持您的 ID 唯一,因为这些 ID 将在整个过程中用于检索保存的值。所以,这里的 ID 是 aa_img_id
。
在上面的屏幕截图中,您可以在 我的上传选项 中找到一个名为我的上传选项的图片上传器strong>Neat Options 管理面板。
用法示例
现在我将进入重要部分:检索保存的选项值。
<?php // 1. Get the titan framework instance and save it to a variable $titan = TitanFramework::getInstance( 'neat' ); // we will initialize $titan only once for every file where we use it. // 2. Get the value via ID using getOption function $aa_img_id_val = $titan->getOption( 'aa_img_id' ); /** * Print the value saved in aa_img_id option */ $aa_img_URL_val= 'http://placehold.it/500x500'; if ( is_numeric( $aa_img_id_val ) ) { $aa_img_attachment = wp_get_attachment_image_src( $aa_img_id_val ); $aa_img_URL_val = $aa_img_attachment[0]; } ?> <h2>The image is shown below:</h2> <img src='<?php echo $aa_img_URL_val; ?>' />
获取 upload
类型选项值的过程与我之前讨论过的选项有些不同。那么,让我解释一下它的代码。
第 3 行和第 6 行非常相似,我在其中调用了 getInstance()
函数来调用唯一实例,该实例最好是您的主题名称(这就是为什么 neat
在我的例子中)。然后我使用了 getOption()
函数,在该函数中我将我的 upload
选项的 ID 作为参数写入。我将其值保存在变量 $aa_img_id_val
中。
接下来,我使用了 if
语句,该语句调用 is_numeric()
函数来检查 $ 的值是否为aa_img_id_val
是一个数字。如果为真,则会进一步处理代码。
为了通过附件 ID 获取上传图像值的源网址,我创建了一个新变量 $aa_img_URL_val
(第 12 行),并为其分配了占位符图像(避免任何垃圾值和给它一个演示占位符图像)。
附件ID可用于获取上传图片的URL;在这方面,我使用了 WordPress 的 wp_get_attachment_image_src()
函数(第 14 行)。此函数返回一个图像对象数组,其中包含位置“0”处图像 src url
的值(在 Codex 中了解更多信息)。
参数 $aa_img_id_val
保存了 aa_img_id
的 ID。该函数的整体输出保存在新变量 $aa_img_attachment
中。
现在,正如我们所知,wp_get_attachment_image_sr()
函数返回src url
位于数组的位置“0”,因此我定义了它在数组中的确切位置,即 $aa_img_attachment[0]
(第 15 行)。然后我将该值分配给 $aa_img_URL_val
,它最初带有一个占位符图像。现在 $aa_img_URL_val
拥有所选图像的源 URL。
最后(第 19 行),我只是通过 echo
命令打印了图像。我建议在此处使用 esc_url()
函数,该函数会转义您的图像 URL。我不会详细讨论,因为它超出了本文的范围。但这是修改第 #19 行的方法:
<img src='<?php echo esc_url( $aa_img_URL_val ); ?>' />
在前端显示结果
假设我上传了此图像并保存了设置。
所以,这就是它在前端的显示方式。
在“管理”选项卡中创建上传类型选项
声明示例
现在我将在管理选项卡中创建此选项。
<?php // Create options for $aa_panel2 inside the $aa_tab1 $aa_tab1->createOption( array( 'id' => 'aa_img_in_tab1_panel2', // IDs should always be unique. The ID which will be used to get the value of this option 'type' => 'upload', // Type of option we are creating 'name' => 'My Upload 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 ) );
在管理选项卡 $aa_tab1
内创建 ID 为 aa_img_in_tab1_panel2
的 upload
选项。
您可以在管理面板Neat Options 2标签 1 内找到此选项/strong>.
用法示例
让我们获取保存的值。
<?php // 1. Get the titan framework instance and save it to a variable $titan = TitanFramework::getInstance( 'neat' ); // we will initialize $titan only once for every file where we use it. // 2. Get the value via ID using getOption function $aa_img_in_tab1_panel2_val = $titan->getOption( 'aa_img_in_tab1_panel2' ); /** * Print the value saved in option */ $aa_img_in_tab1_panel2_URL_val= 'http://placehold.it/500x500'; if ( is_numeric( $aa_img_in_tab1_panel2_val ) ) { $aa_img_in_tab1_panel2_attachment = wp_get_attachment_image_src($aa_img_in_tab1_panel2_val ); $aa_img_in_tab1_panel2_URL_val = $aa_img_in_tab1_panel2_attachment[0]; } ?> <h2>The image in Tab 1 is shown below:</h2> <img src='<?php echo $aa_img_in_tab1_panel2_URL_val; ?>' />
在前端显示结果
我再次上传了相同的图像并保存了它。在前端看起来像这样:
在 Metabox 内创建上传类型选项
声明示例
现在我将在元框中创建此选项。
<?php /** * Create the options for metabox * */ $aa_metbox->createOption( array( 'id' => 'aa_mb_img', // The ID which will be used to get the value of this option 'type' => 'upload', // Type of option we are creating 'name' => 'My Upload 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 ) );
upload
类型选项是通过 createOption()
函数在元盒 $aa_metbox
内创建的。它出现在所有页面/帖子编辑屏幕上。
在上面的屏幕截图中,您可以在元框中找到一个名为我的上传选项的图片上传器在页面编辑屏幕的末尾。
用法示例
使用以下代码。
<?php // 1. Get the titan framework instance and save it to a variable $titan = TitanFramework::getInstance( 'neat' ); // we will initialize $titan only once for every file where we use it. /** Getting values for metabox */ /** * * * Notice the use of get_the_ID(). It is because metabox is created for all * the post types we defined. TO get the value of a metabox option for a specific page/post * we need to give getOptions() function the ID of our post/page. Which is done like this. * */ $aa_mb_img_val = $titan->getOption( 'aa_mb_img', get_the_ID() ); /** * Print the value saved in option */ $aa_mb_img_URL_val= 'http://placehold.it/500x500'; if ( is_numeric( $aa_mb_img_val ) ) { $aa_mb_img_attachment = wp_get_attachment_image_src($aa_mb_img_val ); $aa_mb_img_URL_val = $aa_mb_img_attachment[0]; } ?> <h2>The image in Metabox is shown below:</h2> <img src='<?php echo $aa_mb_img_URL_val; ?>' />
在前端显示结果
我们在前端查看结果:
在主题定制器部分中创建上传类型选项
声明示例
最后,我将在定制器中创建一个图像上传器字段。
<?php /** * * Create the options for $aa_section1 * */ $aa_section1->createOption( array( 'id' => 'aa_sec_img', // The ID which will be used to get the value of this option 'type' => 'upload', // Type of option we are creating 'name' => 'My Upload Option',// Name of the option which will be displayed in the admin panel 'desc' => 'This is our option' // Description of our option ) );
upload
类型选项显示在主题定制器部分 $aa_section1
内。它的 ID 是 aa_sec_img
。
您可以在上图中的我的部分自定义面板中找到上传者字段。< /p>
用法示例
使用以下代码获取值:
<?php // 1. Get the titan framework instance and save it to a variable $titan = TitanFramework::getInstance( 'neat' ); // we will initialize $titan only once for every file where we use it. // Sec Img $aa_sec_img_val = $titan->getOption( 'aa_sec_img' ); /** * Print the value saved in option */ $aa_sec_img_URL_val= 0; if ( is_numeric( $aa_sec_img_val ) ) { $aa_sec_img_attachment = wp_get_attachment_image_src($aa_sec_img_val ); $aa_sec_img_URL_val = $aa_sec_img_attachment[0]; } ?> <h1>The image in Customizer Section is shown below:</h1> <img src='<?php echo $aa_sec_img_URL_val; ?>' />
在前端显示结果
让我们上传实时预览屏幕截图:
结论
就是这样!
颜色选项很容易使用 Titan Framework 实现。在接下来的文章中,我将向您展示如何通过此选项自动生成 CSS 文件或使用它来创建实时预览作品。
我们还介绍了如何使用 Titan Framework 引入上传选项。您可以通过多种方式在 WordPress 插件或主题中使用此选项。例如,您可以允许用户选择徽标或自定义背景图片。
仔细阅读,如果您有任何疑问,请将其留在下面的评论框中,或者您可以在 Twitter 上联系我。
위 내용은 색상 유형 및 업로드 유형 옵션 추가: Titan Framework에 대한 초보자를 위한 단계별 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











HTML은 간단하고 배우기 쉽고 결과를 빠르게 볼 수 있기 때문에 초보자에게 적합합니다. 1) HTML의 학습 곡선은 매끄럽고 시작하기 쉽습니다. 2) 기본 태그를 마스터하여 웹 페이지를 만들기 시작하십시오. 3) 유연성이 높고 CSS 및 JavaScript와 함께 사용할 수 있습니다. 4) 풍부한 학습 리소스와 현대 도구는 학습 과정을 지원합니다.

HTML은 웹 구조를 정의하고 CSS는 스타일과 레이아웃을 담당하며 JavaScript는 동적 상호 작용을 제공합니다. 세 사람은 웹 개발에서 의무를 수행하고 화려한 웹 사이트를 공동으로 구축합니다.

anexampleStartingtaginhtmlis, whithbeginsaparagraph.startingtagsareessentialinhtmlastheyinitiate rements, definetheirtypes, andarecrucialforstructurituringwebpages 및 smanstlingthedom.

WebDevelopmentReliesonHtml, CSS 및 JavaScript : 1) HtmlStructuresContent, 2) CSSSTYLESIT, 및 3) JAVASCRIPTADDSINGINTERACTIVITY, BASISOFMODERNWEBEXPERIENCES를 형성합니다.

웹 주석 기능에 대한 Y 축 위치 적응 알고리즘이 기사는 Word 문서와 유사한 주석 기능을 구현하는 방법, 특히 주석 간격을 다루는 방법을 모색합니다 ...

GiteEpages 정적 웹 사이트 배포 실패 : 404 오류 문제 해결 및 해결시 Gitee ...

이미지를 클릭 한 후 주변 이미지를 산란 및 확대하는 효과를 얻으려면 많은 웹 디자인이 대화식 효과를 달성해야합니다. 특정 이미지를 클릭하여 주변을 만들 수 있습니다 ...

HTML, CSS 및 JavaScript는 웹 개발의 세 가지 기둥입니다. 1. HTML은 웹 페이지 구조를 정의하고 등과 같은 태그를 사용합니다. 2. CSS는 색상, 글꼴 크기 등과 같은 선택기 및 속성을 사용하여 웹 페이지 스타일을 제어합니다.
