สร้าง Sitemaps สำหรับหน้ารูปภาพและไฟล์สื่อและจัดให้มีคลาสเพื่อส่งไปยังเครื่องมือค้นหา
วิธีที่แนะนำในการติดตั้งคอมโพเนนต์ sitemap คือผ่านนักแต่งเพลง เรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้ง:
php composer.phar require nilportugues/sitemap-componentส่วนประกอบนี้สร้างเว็บไซต์เว็บไซต์ที่รองรับโดยเครื่องมือค้นหาหลัก Google และ Bing ในรูปแบบ XML และ GZIP
ส่วนประกอบ sitemap สามารถสร้างประเภทไซต์ดังต่อไปนี้:
แผนผังไซต์ที่ทำหน้าที่เป็นดัชนีที่มีการอ้างอิงไปยังไฟล์ siteMap.xml อื่น ๆ เอกสารเพิ่มเติมสามารถพบได้ที่นี่
SiteMaps เนื้อหาข้อความซึ่งเป็นแผนผังไซต์ประเภทที่พบได้ทั่วไปในอินเทอร์เน็ต เอกสารเพิ่มเติมสามารถพบได้ที่นี่
แผนผังไซต์สำหรับภาพ เอกสารเพิ่มเติมสามารถพบได้ที่นี่
แผนผังไซต์สำหรับวิดีโอ เอกสารเพิ่มเติมสามารถพบได้ที่นี่
ทางเลือกสำหรับแผนที่วิดีโอ เอกสารเพิ่มเติมสามารถพบได้ที่นี่
แผนผังไซต์สำหรับบทความข่าว เอกสารเพิ่มเติมสามารถพบได้ที่นี่
ส่วนประกอบ sitemap เป็นไปตามมาตรฐาน 100% ซึ่งหมายความว่ามันเป็นไปตามข้อห้ามอย่างเคร่งครัด:
<url> ส่วนประกอบนี้ยังมีวิธีการในการส่ง sitemaps ที่สร้างขึ้นไปยังเครื่องมือค้นหาต่อไปนี้:
<?php
use NilPortugues Sitemap SubmitSitemap ;
// $status = ['google' => true, 'bing' => true]; if everything went OK.
$ status = SubmitSitemap :: send ( ' http://example.com/sitemap-index.xml ' );ในการใช้ดัชนี Sitemap คุณต้องสร้างไฟล์ Sitemap ก่อน ตรวจสอบ 4.3, 4.4 และ 4.5
use NilPortugues Sitemap IndexSitemap ;
use NilPortugues Sitemap Item Index IndexItem ;
use NilPortugues Sitemap SitemapException ;
try {
$ sitemap = new IndexSitemap ( ' path/to/folder ' , ' sitemap.index.xml ' );
$ item = new IndexItem ( ' http://www.example.com/sitemap.content.xml ' );
$ item -> setLastMod ( ' 2005-05-10T17:33:30+08:00 ' ); //Optional
$ sitemap -> add ( $ item );
$ item = new IndexItem ( ' http://www.example.com/sitemap.media.xml ' );
$ item -> setLastMod ( ' 2005-05-10T17:33:30+08:00 ' );
$ sitemap -> add ( $ item );
$ sitemap -> build ();
} catch ( SitemapException $ e ) {
echo $ e -> getMessage ();
}<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< sitemapindex xmlns = " http://www.sitemaps.org/schemas/sitemap/0.9 " >
< sitemap >
< loc >http://www.example.com/sitemap.content.xml</ loc >
< lastmod >2005-05-10T17:33:30+08:00</ lastmod >
</ sitemap >
< sitemap >
< loc >http://www.example.com/sitemap.media.xml</ loc >
< lastmod >2005-05-10T17:33:30+08:00</ lastmod >
</ sitemap >
</ sitemapindex > use NilPortugues Sitemap Sitemap ;
use NilPortugues Sitemap Item Url UrlItem ;
use NilPortugues Sitemap SitemapException ;
try {
$ sitemap = new Sitemap ( ' path/to/folder ' , ' sitemap.index.xml ' );
$ item = new UrlItem ( ' http://www.example.com/ ' );
$ item -> setPriority ( ' 1.0 ' ); //Optional
$ item -> setChangeFreq ( ' daily ' ); //Optional
$ item -> setLastMod ( ' 2014-05-10T17:33:30+08:00 ' ); //Optional
$ sitemap -> add ( $ item );
$ item = new UrlItem ( ' http://www.example.com/blog ' );
$ item -> setPriority ( ' 0.9 ' );
$ item -> setChangeFreq ( ' monthly ' );
$ item -> setLastMod ( ' 2014-05-10T17:33:30+08:00 ' );
$ sitemap -> add ( $ item );
$ item = new UrlItem ( ' http://www.example.com/contact ' );
$ item -> setPriority ( ' 0.8 ' );
$ item -> setChangeFreq ( ' never ' );
$ item -> setLastMod ( ' 2014-05-10T17:33:30+08:00 ' );
$ sitemap -> add ( $ item );
$ sitemap -> build ();
} catch ( SitemapException $ e ) {
echo $ e -> getMessage ();
}<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< urlset xmlns = " http://www.sitemaps.org/schemas/sitemap/0.9 " >
< url >
< loc >http://www.example.com/</ loc >
< lastmod >2014-05-10T17:33:30+08:00</ lastmod >
< changefreq >daily</ changefreq >
< priority >1.0</ priority >
</ url >
< url >
< loc >http://www.example.com/blog</ loc >
< lastmod >2014-05-10T17:33:30+08:00</ lastmod >
< changefreq >monthly</ changefreq >
< priority >0.9</ priority >
</ url >
< url >
< loc >http://www.example.com/contact</ loc >
< lastmod >2014-05-10T17:33:30+08:00</ lastmod >
< changefreq >never</ changefreq >
< priority >0.8</ priority >
</ url >
</ urlset > use NilPortugues Sitemap ImageSitemap ;
use NilPortugues Sitemap Item Image ImageItem ;
use NilPortugues Sitemap SitemapException ;
try {
$ sitemap = new ImageSitemap ( ' path/to/folder ' , ' sitemap.image.xml ' );
$ item = new ImageItem ( ' http://www.example.com/logo.png ' );
$ item -> setTitle ( ' Example.com logo ' ); //Optional
$ sitemap -> add ( $ item , ' http://www.example.com/ ' );
$ item = new ImageItem ( ' http://www.example.com/main.png ' );
$ item -> setTitle ( ' Main image ' ); //Optional
$ sitemap -> add ( $ item , ' http://www.example.com/ ' );
$ sitemap -> build ();
} catch ( SitemapException $ e ) {
echo $ e -> getMessage ();
}<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< urlset xmlns = " http://www.sitemaps.org/schemas/sitemap/0.9 "
xmlns:image= " http://www.google.com/schemas/sitemap-image/1.1 " >
< url >
< loc >http://www.example.com/</ loc >
< image : image >
< image : loc > <![CDATA[ http://www.example.com/logo.png ]]> </ image : loc >
< image : title > <![CDATA[ Example.com logo ]]> </ image : title >
</ image : image >
< image : image >
< image : loc > <![CDATA[ http://www.example.com/main.png ]]> </ image : loc >
< image : title > <![CDATA[ Main image ]]> </ image : title >
</ image : image >
</ url >
</ urlset > use NilPortugues Sitemap VideoSitemap ;
use NilPortugues Sitemap Item Video VideoItem ;
use NilPortugues Sitemap SitemapException ;
try {
$ sitemap = new VideoSitemap ( ' path/to/folder ' , ' sitemap.video.xml ' );
$ item = new VideoItem (
' Grilling steaks for summer ' , //Title
' http://www.example.com/video123.flv ' , //URL
' http://www.example.com/videoplayer.swf?video=123 ' , //Player URL
' yes ' , //Optional
' ap=1 ' // Optional
);
//Optional Values
$ item -> setDescription ( ' Alkis shows you how to get perfectly done steaks everytime ' );
$ item -> setThumbnailLoc ( ' http://www.example.com/thumbs/123.jpg ' );
$ item -> setDuration ( 600 );
$ item -> setExpirationDate ( ' 2009-11-05T19:20:30+08:00 ' );
$ item -> setRating ( 4.2 );
$ item -> setViewCount ( 12345 );
$ item -> setPublicationDate ( ' 2007-11-05T19:20:30+08:00 ' );
$ item -> setFamilyFriendly ( ' yes ' );
$ item -> setRestriction ( ' IE GB US CA ' , ' allow ' );
$ item -> setGalleryLoc ( ' http://cooking.example.com ' , ' Cooking Videos ' );
$ item -> setPrice ( ' 0.99 ' , ' EUR ' , ' rent ' , ' HD ' );
$ item -> setPrice ( ' 0.75 ' , ' EUR ' , ' rent ' , ' SD ' );
$ item -> setCategory ( ' cooking ' );
$ item -> setTag ( array ( ' action ' , ' drama ' , ' entrepreneur ' ));
$ item -> setRequiresSubscription ( ' yes ' );
$ item -> setUploader ( ' GrillyMcGrillerson ' , ' http://www.example.com/users/grillymcgrillerson ' );
$ item -> setPlatform ( ' web mobile tv ' , ' allow ' );
$ item -> setLive ( ' no ' );
$ sitemap -> add ( $ item , ' http://www.example.com/ ' );
$ files = $ sitemap -> build ();
} catch ( SitemapException $ e ) {
echo $ e -> getMessage ();
}<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< urlset xmlns = " http://www.sitemaps.org/schemas/sitemap/0.9 " xmlns : video = " http://www.google.com/schemas/sitemap-video/1.1 " >
< url >
< loc >http://www.example.com/</ loc >
< video : video >
< video : thumbnail_loc > <![CDATA[ http://www.example.com/thumbs/123.jpg ]]> </ video : thumbnail_loc >
< video : title > <![CDATA[ Grilling steaks for summer ]]> </ video : title >
< video : description > <![CDATA[ Alkis shows you how to get perfectly done steaks everytime ]]> </ video : description >
< video : content_loc > <![CDATA[ http://www.example.com/video123.flv ]]> </ video : content_loc >
< video : duration > <![CDATA[ 600 ]]> </ video : duration >
< video : expiration_date > <![CDATA[ 2009-11-05T19:20:30+08:00 ]]> </ video : expiration_date >
< video : publication_date > <![CDATA[ 2007-11-05T19:20:30+08:00 ]]> </ video : publication_date >
< video : restriction relationship = " allow " >IE GB US CA</ video : restriction >
< video : gallery_loc title = " Cooking Videos " >http://cooking.example.com</ video : gallery_loc >
< video : price currency = " EUR " type = " rent " resolution = " HD " >0.99</ video : price >
< video : price currency = " EUR " type = " rent " resolution = " SD " >0.75</ video : price >
< video : tag >action</ video : tag >
< video : tag >drama</ video : tag >
< video : tag >entrepreneur</ video : tag >
< video : requires_subscription > <![CDATA[ yes ]]> </ video : requires_subscription >
< video : uploader >GrillyMcGrillerson</ video : uploader >
< video : platform relationship = " allow " >web mobile tv</ video : platform >
< video : live > <![CDATA[ no ]]> </ video : live >
</ video : video >
</ url >
</ urlset > use NilPortugues Sitemap MediaSitemap ;
use NilPortugues Sitemap Item Media MediaItem ;
use NilPortugues Sitemap SitemapException ;
try {
$ sitemap = new MediaSitemap ( ' path/to/folder ' , ' sitemap.media.xml ' );
$ sitemap -> setTitle ( ' Media RSS de ejemplo ' );
$ sitemap -> setLink ( ' http://www.example.com/ejemplos/mrss/ ' );
$ sitemap -> setDescription ( ' Ejemplo de MRSS ' );
$ item = new MediaItem ( ' http://www.example.com/examples/mrss/example1.html ' );
//Optional
$ item -> setContent ( ' video/x-flv ' , 120 );
$ item -> setPlayer ( ' http://www.example.com/shows/example/video.swf?flash_params ' );
$ item -> setTitle ( ' Barbacoas en verano ' );
$ item -> setDescription ( ' Consigue que los filetes queden perfectamente hechos siempre ' );
$ item -> setThumbnail ( ' http://www.example.com/examples/mrss/example1.png ' , 120 , 160 );
$ sitemap -> add ( $ item );
$ item = new MediaItem ( ' http://www.example.com/examples/mrss/example2.html ' );
$ item -> setContent ( ' video/x-flv ' , 120 );
$ item -> setPlayer ( ' http://www.example.com/shows/example/video.swf?flash_params ' );
$ item -> setTitle ( ' Barbacoas en invierno ' );
$ item -> setDescription ( ' Consigue unos filetes frios ' );
$ item -> setThumbnail ( ' http://www.example.com/examples/mrss/example2.png ' , 120 , 160 );
$ sitemap -> add ( $ item );
$ sitemap -> build ();
} catch ( SitemapException $ e ) {
echo $ e -> getMessage ();
}<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< rss version = " 2.0 " xmlns : media = " http://search.yahoo.com/mrss/ " xmlns : dcterms = " http://purl.org/dc/terms/ " >
< channel >
< title >Media RSS de ejemplo</ title >
< link >http://www.example.com/ejemplos/mrss/</ link >
< description >Ejemplo de MRSS</ description >
< item xmlns : media = " http://search.yahoo.com/mrss/ " xmlns : dcterms = " http://purl.org/dc/terms/ " >
< link >http://www.example.com/examples/mrss/example1.html</ link >
< media : content type = " video/x-flv " duration = " 120 " >
< media : player url = " http://www.example.com/shows/example/video.swf?flash_params " />
< media : title >Barbacoas en verano</ media : title >
< media : description >Consigue que los filetes queden perfectamente hechos siempre</ media : description >
< media : thumbnail url = " http://www.example.com/examples/mrss/example1.png " height = " 120 " width = " 160 " />
</ media : content >
</ item >
< item xmlns : media = " http://search.yahoo.com/mrss/ " xmlns : dcterms = " http://purl.org/dc/terms/ " >
< link >http://www.example.com/examples/mrss/example2.html</ link >
< media : content type = " video/x-flv " duration = " 240 " >
< media : player url = " http://www.example.com/shows/example/video.swf?flash_params " />
< media : title >Barbacoas en invierno</ media : title >
< media : description >Consigue unos filetes frios</ media : description >
< media : thumbnail url = " http://www.example.com/examples/mrss/example2.png " height = " 120 " width = " 160 " />
</ media : content >
</ item >
</ channel >
</ rss > use NilPortugues Sitemap NewsSitemap ;
use NilPortugues Sitemap Item News NewsItem ;
use NilPortugues Sitemap SitemapException ;
try {
$ sitemap = new NewsSitemap ( ' path/to/folder ' , ' sitemap.news.xml ' );
$ item = new NewsItem (
' http://www.example.org/business/article55.html ' , //URL
' Companies A, B in Merger Talks ' , //Title
' 2008-12-23 ' , //Publication Date
' The Example Times ' , //Publication Name
' en ' //locale
);
//Optional Values
$ item -> setAccess ( ' Subscription ' );
$ item -> setKeywords ( ' business, merger, acquisition, A, B ' );
$ item -> setStockTickers ( ' NASDAQ:A, NASDAQ:B ' );
$ item -> setGenres ( ' PressRelease, Blog ' );
$ sitemap -> add ( $ item );
$ sitemap -> build ();
} catch ( SitemapException $ e ) {
echo $ e -> getMessage ();
}<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< urlset xmlns = " http://www.sitemaps.org/schemas/sitemap/0.9 " xmlns : news = " http://www.google.com/schemas/sitemap-news/0.9 " >
< url >
< loc >http://www.example.org/business/article55.html</ loc >
< news : news >
< news : publication >
< news : name >The Example Times</ news : name >
< news : language >en</ news : language >
</ news : publication >
< news : access >Subscription</ news : access >
< news : genres >PressRelease, Blog</ news : genres >
< news : publication_date >2008-12-23</ news : publication_date >
< news : title >Companies A, B in Merger Talks</ news : title >
< news : keywords >business, merger, acquisition, A, B</ news : keywords >
< news : stock_tickers >NASDAQ:A, NASDAQ:B</ news : stock_tickers >
</ news : news >
</ url >
</ urlset >การทดสอบได้ดำเนินการโดยใช้ phpunit และ travis-CI รหัสทั้งหมดได้รับการทดสอบว่าเข้ากันได้กับ PHP 5.4 ถึง PHP 5.6 และ HHVM ของ Facebook
ส่งอีเมลถึงฉันหรือติดต่อกับฉันโดยใช้
-
Nil PortuguésCalderó