国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
您需要什么
決定你的方法
開始使用
輸出當(dāng)前頁(yè)面的子級(jí)列表
將代碼添加到主題
輸出特定頁(yè)面的子級(jí)列表
后續(xù)步驟
首頁(yè) CMS教程 &#&按 創(chuàng)建 WordPress 圖片庫(kù):開發(fā)插件

創(chuàng)建 WordPress 圖片庫(kù):開發(fā)插件

Sep 01, 2023 pm 09:53 PM

創(chuàng)建 WordPress 圖片庫(kù):開發(fā)插件

人們喜歡圖片。他們喜歡看它們,喜歡點(diǎn)擊它們。因此,在您網(wǎng)站的導(dǎo)航中使用它們是有意義的。

您可能已經(jīng)在存檔頁(yè)面中使用了特色圖像,讓用戶可以更深入地了解帖子的內(nèi)容,并使您的存檔頁(yè)面看起來(lái)更好。精美的可點(diǎn)擊大圖片還使瀏覽頁(yè)面或發(fā)布帖子的過(guò)程更加直觀。

但在其他地方,您可以使用特色圖像來(lái)幫助導(dǎo)航到 WordPress 網(wǎng)站的某些部分。在這個(gè)由兩部分組成的教程中,我們將向您展示如何創(chuàng)建圖像網(wǎng)格,該網(wǎng)格鏈接到您網(wǎng)站中給定頁(yè)面的子頁(yè)面,或當(dāng)前頁(yè)面的子頁(yè)面。

在第一部分中,我將演示如何編寫 PHP 來(lái)獲取頁(yè)面并輸出其標(biāo)題和特色圖像、內(nèi)部鏈接。在第二部分中,Ian Yates 將向您展示如何添加 CSS 將列表變成美觀的網(wǎng)格。

您需要什么

要學(xué)習(xí)本教程,您需要具備以下條件:

  • WordPress 的開發(fā)安裝 - 在測(cè)試之前不要將其添加到您的實(shí)時(shí)網(wǎng)站。
  • 具有供您添加內(nèi)容或可以編輯的操作掛鉤的主題。如果它是沒有鉤子的第三方主題,請(qǐng)創(chuàng)建一個(gè)子主題并對(duì)其進(jìn)行編輯。
  • 代碼編輯器。

決定你的方法

要做的第一件事是決定要輸出哪些頁(yè)面。在本教程中,我將演示兩個(gè)選項(xiàng):

  • 當(dāng)前頁(yè)面的子頁(yè)面列表,包含圖像。
  • 特定頁(yè)面的子頁(yè)面列表,包含圖像。它可以顯示在您網(wǎng)站的任何位置,而不僅僅是父頁(yè)面。

開始使用

兩種方法的出發(fā)點(diǎn)是相同的。

首先在 wp-content/plugins 文件夾中創(chuàng)建一個(gè)插件。您需要為插件創(chuàng)建一個(gè)文件夾,因?yàn)樵诒窘坛痰牡诙糠种?,您將添加樣式表以及主插件文件?/p>

獲得文件夾后,為您的代碼創(chuàng)建一個(gè) PHP 文件。我正在調(diào)用我的 tutsplus-child-pages.php

現(xiàn)在設(shè)置您的插件文件,并在頂部添加注釋掉的文本:

/**
 * Plugin Name:  Tutsplus List Child Pages
 * Plugin URI:   https://github.com/rachelmccollin/tutsplus-list-child-pages
 * Description:  Output a list of children of the current page or a specific page with featured images.
 * Author:       Rachel McCollin
 * Author URI:   https://rachelmccollin.com
 * Version:      1.0
 * Text Domain:  tutsplus
 * License:      GPLv2.0+
 */

這會(huì)告訴 WordPress 您的插件是什么以及它的用途。

現(xiàn)在,如果您還沒有創(chuàng)建一些頁(yè)面,請(qǐng)繼續(xù)創(chuàng)建一些頁(yè)面。我將創(chuàng)建一些帶有子頁(yè)面的頁(yè)面,其中包括一個(gè)位置頁(yè)面作為我的特定頁(yè)面列表的父頁(yè)面。

這是我在管理中的頁(yè)面:

創(chuàng)建 WordPress 圖片庫(kù):開發(fā)插件

現(xiàn)在是時(shí)候編寫輸出列表的函數(shù)了。

輸出當(dāng)前頁(yè)面的子級(jí)列表

讓我們從這個(gè)選項(xiàng)開始。這將輸出當(dāng)前頁(yè)面的所有子頁(yè)面的列表,其中包含圖像、鏈接和標(biāo)題。

如果您的網(wǎng)站具有分層頁(yè)面結(jié)構(gòu),并且您希望鼓勵(lì)訪問(wèn)頂級(jí)頁(yè)面(或中級(jí)頁(yè)面,如果有的話)的人們?cè)L問(wèn)該結(jié)構(gòu)中位于其下方的頁(yè)面,那么這是一種有用的方法。

首先在插件文件中創(chuàng)建一個(gè)函數(shù):

function tutpslus_list_current_child_pages() {

}

現(xiàn)在,在該函數(shù)內(nèi),檢查我們是否在頁(yè)面上。其他所有內(nèi)容都將放入該條件標(biāo)記內(nèi):

if ( is_page() ) {

}

接下來(lái),設(shè)置 $post 全局變量并定義父頁(yè)面:

global $post;

// define the page they need to be children of
$parentpage = get_the_ID();

之后,定義 get_pages() 函數(shù)的參數(shù):

// define args
$args = array(
    'parent' => $parentpage,
	'sort_order' => 'ASC',
	'sort_column' => 'menu_order',
);

$children = get_pages( $args );

您可能想要更改其中一些參數(shù)。我使用 menu_order 進(jìn)行排序,因此我可以手動(dòng)調(diào)整它,但您可以使用日期、標(biāo)題或任何其他可排序參數(shù)。

下一個(gè)任務(wù)是使用 get_pages() 函數(shù)的結(jié)果設(shè)置 foreach 函數(shù)的結(jié)果設(shè)置 foreach 循環(huán):

if ( $children ) { ?>

    <div class="child-page-listing">
		
		<h2><?php _e( 'Learn More', 'tutsplus' ); ?></h2>
	
		<?php //foreach loop to output
		foreach ( $children as $post ) {
			
			setup_postdata( $post ); ?>
			
			<article id="<?php the_ID(); ?>" class="child-listing" <?php post_class(); ?>>
				
				<?php if ( has_post_thumbnail() ) { ?>
				
					<a class="child-post-title" href="<?php the_permalink(); ?>">
						<?php the_title(); ?>
					</a>
					
					<div class="child-post-image">	
						<a href="<?php the_permalink(); ?>">
							<?php the_post_thumbnail( 'medium' ); ?>
						</a>
					</div>	
			
				<?php }	?>
			
			</article>	
			
		<?php } ?>
		
	</div>
	
<?php }

讓我們運(yùn)行一下該代碼:

  1. 首先,我們檢查 get_pages() 函數(shù)是否返回任何結(jié)果,即 $children 函數(shù)是否返回任何結(jié)果,即 $children 是否已填充。
  2. 然后我們?yōu)槊總€(gè)子頁(yè)面啟動(dòng)一個(gè) foreach 循環(huán)作為 foreach 循環(huán)作為 $post 變量。
  3. 在該循環(huán)中,我們打開一個(gè) article 元素。
  4. 我們檢查是否有特色圖片(或帖子縮略圖)并將其輸出到頁(yè)面的鏈接內(nèi)。
  5. 然后我們將頁(yè)面的標(biāo)題輸出到頁(yè)面的鏈接中。
  6. 最后,我們關(guān)閉元素和條件檢查以及 foreach 循環(huán)本身。

我已向每個(gè)元素添加了 CSS 類,以便我們可以在本教程的第二部分中設(shè)置它們的樣式。

將代碼添加到主題

現(xiàn)在你有你的功能了。下一步是將其添加到您的主題中,以便可以在正確的位置輸出。

如果您的主題有動(dòng)作掛鉤,您可以將您的函數(shù)掛鉤到其中之一。因此,如果我的有一個(gè) after_content 掛鉤,我可以在我的插件中的函數(shù)外部添加此代碼:

add_action( 'after_content', 'tutpslus_list_current_child_pages' );

但是,我在這個(gè)演示中使用了“二十十六”主題,它沒有這樣的動(dòng)作掛鉤。因此,我需要直接在模板文件中添加函數(shù)。

如果您使用自己的主題,則可以將其添加到 page.php 文件中您希望顯示列表的位置。

但如果您使用的是第三方主題,則不得對(duì)其進(jìn)行編輯,因?yàn)橄麓胃轮黝}時(shí)所有更改都將丟失。相反,創(chuàng)建一個(gè)子主題。在新的子主題中創(chuàng)建父主題的 page.php 文件的副本(或 page.php 的循環(huán)文件的副本),然后對(duì)其進(jìn)行編輯。

確定您希望在頁(yè)面中輸出列表的位置,并將其添加到主題模板文件中:

tutpslus_list_current_child_pages();

我已將其添加到子主題的 page.php 文件中的循環(huán)之后。

現(xiàn)在讓我們看一下該網(wǎng)站。這是我的關(guān)于我們頁(yè)面及其子頁(yè)面:

創(chuàng)建 WordPress 圖片庫(kù):開發(fā)插件

這就是添加指向當(dāng)前頁(yè)面子頁(yè)面的鏈接的方法。但是,如果您想添加指向某一特定頁(yè)面的子頁(yè)面的鏈接該怎么辦?接下來(lái)讓我們解決這個(gè)問(wèn)題。

輸出特定頁(yè)面的子級(jí)列表

此代碼與當(dāng)前頁(yè)面子頁(yè)面的代碼幾乎相同。區(qū)別在于定義運(yùn)行 get_pages() 時(shí)將使用的父頁(yè)面。

復(fù)制插件文件中的第一個(gè)函數(shù)并編輯函數(shù)名稱,使它們不同。

找到頁(yè)面上的條件檢查并將其刪除。不要忘記也刪除該檢查的右大括號(hào)。

現(xiàn)在找到如下行:

$parentpage = get_the_ID();

將其替換為:

$page = get_page_by_path( 'locations', OBJECT, 'page' );
    
$parentpage = $page->ID;

您會(huì)看到它使用 get_page_by_path() 函數(shù),其第一個(gè)參數(shù)是目標(biāo)頁(yè)面的 slug。編輯此內(nèi)容,使其使用您想要在網(wǎng)站中定位的頁(yè)面的 slug。

在此函數(shù)中編輯 CSS 類也是一種很好的做法,以便它們與第一個(gè)函數(shù)中的 CSS 類不同。這樣,如果您同時(shí)使用兩者,則可以為每個(gè)使用不同的樣式。

這是進(jìn)行這些編輯后的完整功能:

function tutpslus_list_locations_child_pages() {
    			
	global $post;
	
	// define the page they need to be children of
	$page = get_page_by_path( 'locations', OBJECT, 'page' );
    
    $parentpage = $page->ID;
    
    // define args
	$args = array(
		'parent' => $parentpage,
		'sort_order' => 'ASC',
		'sort_column' => 'menu_order',
	);
	
	//run get_posts
	$children = get_pages( $args );
	
	if ( $children ) { ?>
	
		<div class="child-page-listing">
			
			<h2><?php _e( 'Our Locations', 'tutsplus' ); ?></h2>
		
			<?php //foreach loop to output
			foreach ( $children as $post ) {
				
				setup_postdata( $post ); ?>
				
				<article id="<?php the_ID(); ?>" class="location-listing" <?php post_class(); ?>>
					
					<?php if ( has_post_thumbnail() ) { ?>
					
						<a class="location-title" href="<?php the_permalink(); ?>">
							<?php the_title(); ?>
						</a>
						
						<div class="location-image">	
							<a href="<?php the_permalink(); ?>">
								<?php the_post_thumbnail( 'medium' ); ?>
							</a>
						</div>	
				
					<?php }	?>
				
				</article>	
				
			<?php } ?>
			
		</div>
		
	<?php }
			
}

將代碼添加到主題

您需要再次將代碼添加到主題中。在這種情況下,您不僅希望列表在靜態(tài)頁(yè)面中輸出,而且可能希望將其放在不同的位置。

如果您的主題有操作掛鉤,您可以在插件文件中使用其中之一,方式與之前類似:

add_action( 'before_footer', 'tutpslus_list_locations_child_pages' );

我將把它添加到我的主題的頁(yè)腳中,再次在我的子主題中創(chuàng)建 footer.php 的副本并對(duì)其進(jìn)行編輯。

這是我的 footer.php 文件中的代碼,位于 footer 元素的開頭:

<?php tutpslus_list_locations_child_pages(); // list locations pages ?>

這是我的頁(yè)腳中的列表輸出。這是在單個(gè)帖子的底部:

創(chuàng)建 WordPress 圖片庫(kù):開發(fā)插件

提示:如果出現(xiàn)以下情況,您可能希望避免在位置頁(yè)面中輸出此列表:您同時(shí)運(yùn)行這兩個(gè)函數(shù),以避免重復(fù)。嘗試使用頁(yè)面 ID 添加條件標(biāo)記來(lái)實(shí)現(xiàn)此目的。

后續(xù)步驟

您現(xiàn)在有兩個(gè)頁(yè)面列表:一個(gè)是當(dāng)前頁(yè)面的子頁(yè)面,另一個(gè)是特定頁(yè)面的子頁(yè)面。

現(xiàn)在,圖像都被推到頁(yè)面的一側(cè),標(biāo)題看起來(lái)不太好。在這個(gè)由兩部分組成的教程的下一部分(鏈接如下)中,您將學(xué)習(xí)如何設(shè)置圖像樣式以創(chuàng)建具有 CSS 網(wǎng)格布局的網(wǎng)格,以及如何將標(biāo)題文本集成到該網(wǎng)格中。

以上是創(chuàng)建 WordPress 圖片庫(kù):開發(fā)插件的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請(qǐng)聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁(yè)開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276
如何在WordPress中縮小JavaScript文件 如何在WordPress中縮小JavaScript文件 Jul 07, 2025 am 01:11 AM

MinifyingJavaScript文件可通過(guò)刪除空白、注釋和無(wú)用代碼來(lái)提升WordPress網(wǎng)站加載速度。1.使用支持合并壓縮的緩存插件如W3TotalCache,在“Minify”選項(xiàng)中啟用并選擇壓縮模式;2.使用專用壓縮插件如FastVelocityMinify,提供更精細(xì)控制;3.手動(dòng)壓縮JS文件并通過(guò)FTP上傳,適用于熟悉開發(fā)工具的用戶。注意部分主題或插件腳本可能與壓縮功能沖突,啟用后需徹底測(cè)試網(wǎng)站功能。

如何以編程方式防止評(píng)論垃圾郵件 如何以編程方式防止評(píng)論垃圾郵件 Jul 08, 2025 am 12:04 AM

防止評(píng)論垃圾信息最有效的方式是通過(guò)程序化手段自動(dòng)識(shí)別并攔截。1.使用驗(yàn)證碼機(jī)制(如GooglereCAPTCHA或hCaptcha)可有效區(qū)分人類與機(jī)器人,尤其適合公眾網(wǎng)站;2.設(shè)置隱藏字段(Honeypot技術(shù)),利用機(jī)器人自動(dòng)填寫特性識(shí)別垃圾評(píng)論,不影響用戶體驗(yàn);3.檢查評(píng)論內(nèi)容關(guān)鍵詞黑名單,通過(guò)敏感詞匹配過(guò)濾垃圾信息,需注意避免誤判;4.判斷評(píng)論頻率與來(lái)源IP,限制單位時(shí)間內(nèi)的提交次數(shù)并建立黑名單;5.使用第三方反垃圾服務(wù)(如Akismet、Cloudflare)提升識(shí)別準(zhǔn)確性??筛鶕?jù)網(wǎng)站

如何爭(zhēng)取古騰堡大塊的資產(chǎn) 如何爭(zhēng)取古騰堡大塊的資產(chǎn) Jul 09, 2025 am 12:14 AM

在開發(fā)Gutenberg塊時(shí),正確enqueue資產(chǎn)的方法包括:1.使用register_block_type指定editor_script、editor_style和style的路徑;2.在functions.php或插件中通過(guò)wp_register_script和wp_register_style注冊(cè)資源,并設(shè)置正確的依賴和版本;3.配置構(gòu)建工具輸出合適的模塊格式,并確保路徑一致;4.通過(guò)add_theme_support或enqueue_block_assets控制前端樣式的加載邏輯,確保

如何添加自定義重寫規(guī)則 如何添加自定義重寫規(guī)則 Jul 08, 2025 am 12:11 AM

在WordPress中添加自定義重寫規(guī)則的關(guān)鍵在于使用add_rewrite_rule函數(shù)并確保規(guī)則正確生效。1.使用add_rewrite_rule注冊(cè)規(guī)則,格式為add_rewrite_rule($regex,$redirect,$after),其中$regex是正則表達(dá)式匹配URL,$redirect指定實(shí)際查詢,$after控制規(guī)則位置;2.需通過(guò)add_filter添加自定義查詢變量;3.修改后必須刷新固定鏈接設(shè)置;4.建議將規(guī)則放在'top'以避免沖突;5.可借助插件查看當(dāng)前規(guī)則便于

如何優(yōu)化WordPress機(jī)器人TXT 如何優(yōu)化WordPress機(jī)器人TXT Jul 13, 2025 am 12:37 AM

robots.txt對(duì)WordPress網(wǎng)站的SEO至關(guān)重要,能引導(dǎo)搜索引擎抓取行為,避免重復(fù)內(nèi)容并提升效率。1.屏蔽如/wp-admin/、/wp-includes/等系統(tǒng)路徑,但避免誤封/uploads/目錄;2.添加Sitemap路徑如Sitemap:https://yourdomain.com/sitemap.xml以幫助搜索引擎快速發(fā)現(xiàn)站點(diǎn)地圖;3.限制/page/和帶參數(shù)的URL以減少爬蟲浪費(fèi),但需注意勿封重要?dú)w檔頁(yè);4.避免常見錯(cuò)誤如誤封全站、緩存插件影響更新及忽略移動(dòng)端與子域名配

如何介紹WordPress性能 如何介紹WordPress性能 Jul 07, 2025 am 12:43 AM

1.使用性能分析插件可快速定位問(wèn)題,如QueryMonitor可查看數(shù)據(jù)庫(kù)查詢次數(shù)與PHP錯(cuò)誤,BlackboxProfiler生成函數(shù)執(zhí)行報(bào)告,NewRelic提供服務(wù)器級(jí)分析;2.分析PHP執(zhí)行性能需檢查耗時(shí)函數(shù)、調(diào)試工具使用及內(nèi)存分配情況,如Xdebug生成火焰圖輔助優(yōu)化;3.監(jiān)控?cái)?shù)據(jù)庫(kù)查詢效率可通過(guò)慢查詢?nèi)罩九c索引檢查,QueryMonitor能列出所有SQL并按時(shí)間排序;4.結(jié)合GooglePageSpeedInsights、GTmetrix與WebPageTest等外部工具評(píng)估前端加

WordPress的最小php版本是什么 WordPress的最小php版本是什么 Jul 10, 2025 am 11:21 AM

WordPressrequiresatleastPHP7.4,thoughusing8.0orhigherisrecommendedforbetterperformanceandsecurity.Olderversionslike5.6areoutdated,unsupported,andposesecurityrisks.UsingupdatedPHPimprovessecurity,enhancesperformance,andensurescompatibilitywithmodernpl

如何在Gutenberg使用InspectorControls 如何在Gutenberg使用InspectorControls Jul 12, 2025 am 12:16 AM

InspectorControls是Gutenberg開發(fā)中用于在右側(cè)邊欄添加自定義控件的組件,1.它屬于@wordpress/block-editor包,2.常搭配PanelBody、TextControl等組件使用,3.使用時(shí)需在edit.js中引入并合理布局控件類型如文本框、下拉選擇、開關(guān)、滑動(dòng)條和顏色選擇器等,4.應(yīng)注意分組設(shè)置、保持簡(jiǎn)潔、支持國(guó)際化及優(yōu)化性能。

See all articles