• 09-10-2013, 20:36:09
    #1
    Merhaba arkadaşlar

    Wordpress sitemde eklenen son 10 konuyu rss.xml olarak yazdırmak istiyorum ama bir türlü başarılı olamadım.

    <?xml version=\"1.0\" encoding=\"UTF-8"?><?php
    
    $xml = new SimpleXMLElement("<rss xmlns:content=\"http://purl.org/rss/1.0/modules/content/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:taxo=\"http://purl.org/rss/1.0/modules/taxonomy/\" version=\"2.0\">"?>
    <channel>
        <title>Site Başlığı</title>
        <link>http://www.site.com/</link>
        <description>Site Açıklaması</description>
        <language>tr</language>
     <pubDate><?php echo date( 'D, d M Y H:i:s +0000' ); ?></pubDate>
        <image>
          <title>Site Başlığı</title>
          <url>http://www.site.com/logo.png</url>
          <link>http://www.site.com/</link>
        </image><?php endwhile; ?>
    
    <item>
          <title><?php the_title(); ?></title>
          <link><?php the_permalink(); ?></link>
          <guid><?php the_permalink(); ?></guid>
          <comments><?php the_permalink(); ?>#comment</comments>
    	  <description><![CDATA[<a target="_blank" href="<?php echo get_site_url(); ?>">
    	  <IMG src="<?php echo "RESIM" ;?>" border="0" align="left" width="120" height="90"/>
    </a>YAZI ÖZETİ]]></description>
    	  <pubDate><?php echo date( 'D, d M Y H:i:s +0000' ); ?></pubDate>
        </item> <?php echo $xml->asXML();?></channel>
    </rss>

    nasıl php yi xml olarak çıkartabilirim.. yardımlarınızı bekliyorum
  • 09-10-2013, 21:43:00
    #2
    içerik php olsun ama uzantı xml olsun mu istiyorsunuz ?

    eğer böyle ise htaccess aracılığı ile uzantı ayarlaması yapılabilir.
    ya da php ile file işlemleri aracılığı ile rss.xml şeklinde bir dosya yazdırılabilir.
  • 10-10-2013, 00:53:30
    #3
    eğer sorgusunu yaptıktan sonra verileri bir değişkene aktarıp onuda fopen ile rss.xml kaydederseniz daha sağlıklı olur diğer türlü yani rss.php'yi httaccess'den rss.xml şeklinde yapıpta bırakırsanız rss.xml sayfasına botların her girdiğinde sorgularınız çalışır kasma ve cpu gibi sorunlara yol açabilir.
  • 10-10-2013, 04:31:30
    #4
    SNCR_1 adlı üyeden alıntı: mesajı görüntüle
    eğer sorgusunu yaptıktan sonra verileri bir değişkene aktarıp onuda fopen ile rss.xml kaydederseniz daha sağlıklı olur diğer türlü yani rss.php'yi httaccess'den rss.xml şeklinde yapıpta bırakırsanız rss.xml sayfasına botların her girdiğinde sorgularınız çalışır kasma ve cpu gibi sorunlara yol açabilir.

    Arkadaşa katılıyorum. Ama cache sistemi ile bunu giderebileceğini düşünüyorum.
  • 10-10-2013, 09:02:59
    #5
    uysal_rockci adlı üyeden alıntı: mesajı görüntüle
    içerik php olsun ama uzantı xml olsun mu istiyorsunuz ?

    eğer böyle ise htaccess aracılığı ile uzantı ayarlaması yapılabilir.
    ya da php ile file işlemleri aracılığı ile rss.xml şeklinde bir dosya yazdırılabilir.
    Evet içerik php ile olacak ama uzantı xml olacak. ve konudaki şablona uygun olarak wordpress sistemde çalışması lazım. .htacces ile uzantı ayarlaması zor olmasa gerek ancak php den xml çıkartabileceğim örnek bir kod olmalı

    SNCR_1 adlı üyeden alıntı: mesajı görüntüle
    eğer sorgusunu yaptıktan sonra verileri bir değişkene aktarıp onuda fopen ile rss.xml kaydederseniz daha sağlıklı olur diğer türlü yani rss.php'yi httaccess'den rss.xml şeklinde yapıpta bırakırsanız rss.xml sayfasına botların her girdiğinde sorgularınız çalışır kasma ve cpu gibi sorunlara yol açabilir.
    hocam haklısınız .htacces aracılığı ile php'den xml yazdırmak kasmaya neden olabilir ancak fopen ile nasıl rss.xml kaydedeceğiz orayı anlamadım. Yani örnek bir kod varmı acaba ?
  • 11-10-2013, 01:01:42
    #6
    günceldir... hala boş sayfa hatası alıyorum
  • 11-10-2013, 12:29:33
    #7
    aynı dizinde .htaccess dosyasına ;

    Alıntı
    <IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine on

    RewriteRule ^rss.xml rss.php [L,NC]

    </IfModule>

    ekleyip. rss.php dosyası içerisine kodlarını yaz.
    URL olarak /rss.xml şeklinde yazdığın zaman rss.php dosyasının çalışması lazım.
    ekleme : rss.php en başına
    header("Content-type: text/xml\n\n");
    eklenmeli
  • 12-10-2013, 21:48:14
    #8
    buyur hocam hayrını gör

    $sqlsitemap="select * from konular ORDER BY id DESC";
    $sorgusitemap=mysql_query($sqlsitemap,$baglanti);
    While($sitemapkonu=mysql_fetch_array($sorgusitemap))
    { 
    $sitemapurl .= '<url>
    <loc>http://video.sencer.info/'.$sitemapkonu[baslikurl].'.html</loc>
    <lastmod>'.$sitemapkonu[tarih].'</lastmod>
    <priority>0.7</priority>
    </url>';
    }
    $xml .= '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
    $xml .= $sitemapurl;
    $xml .= '</urlset>';
    
    
    $dosya= fopen ("../sitemap.xml","w") ;
    if(!$dosya) {
    echo "Maalesef kayıt başarısız sencere sormam lazım";
    }
    else
    {
    echo "sitemap başarılı bir şekilde güncellenmiştir.";
    }
     fwrite ($dosya,$xml);
    
     fclose ("$dosya");
  • 13-10-2013, 03:56:58
    #9
    Üyeliği durduruldu
    Bu istediğinizin siteadi.com/feed adresindeki beslemeden farkı nedir? Madem WordPress, faydalanmanızı öneririm. Aksi takdirde CPU sorunlarıyla karşılaşırsınız, cache sistemi kurmazsanız.