Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak odnaleźć linka z dodanego artykułu
Forum PHP.pl > Forum > PHP
amii
Mam automat do dodawania postów na systemy blogowe WordPress. Skrypt działa ok i dodaje artykuł problem jest z pobraniem linka do takiego artykułu. Niestety obecna funkcjonalność działa połowicznie, bywa że nie dodaje linku lub dodaje zły link. Pytanie jest czy zna ktoś dobry algorytm na pobranie linka do właśnie dodanego artykułu ?
Fragment skryptu odpowiedzialny za to:
  1. $pattern = '/<a href="(.*)" rel="bookmark"/i';
  2. $pat = '/<a href="(.*?)"/i';
  3.  
  4. $www = urlencode($tytul); //pobieramy tytul posta z bazy do wyszukania w wyszukiwarce WP
  5. $pobierz = $row['url'].'?s='.$www; //jako parametr wyszukania podajemy tytul
  6. $pobierz = file_get_contents($pobierz);
  7. preg_match($pattern, $pobierz, $matches);
  8.  
  9. if ($matches[0]) {
  10. $tt = preg_match($pat, $matches[0], $wynik);
  11. if ($tt) wstaw($wynik[1]);
  12. }
  13. }
  14.  
  15. function wstaw($matches) {
  16. connect_to_db();
  17. $jezyk_blogi = s('jezyk') == 'pol' ? 'blogi' : 'blogi_de';
  18. $jezyk_dodane = s('jezyk') == 'pol' ? 'dodane' : 'dodane_de';
  19.  
  20. $zapytanie = "INSERT INTO ".$jezyk_dodane."(id, url, tick) VALUES(NULL, '$matches', 0)";
  21. $zapytaj = mysql_query($zapytanie) or die('Bład w zapytaniu w funkcji INSERT INTO dodane(id, url, tick) : ' . mysql_error());
  22. }
  23.  
wNogachSpisz
  1. <?php
  2.  
  3. $dom = new DOMDocument;
  4. @$dom->loadHTML($html);
  5.  
  6. $anachorList = $dom->getElementByTagName('a');
  7. foreach ( $anachorList as $anachor ) {
  8.  
  9. if ( ! $anachor->hasAttribute('rel')) {
  10. continue;
  11. }
  12. if ( 'bookmark' !== $anachor->getAttribute('rel')) {
  13. continue;
  14. }
  15.  
  16. var_dump( $anachor->getAttribute('href'));
  17. }
  18.  
  19. ?>

Całego Ci nie napiszę.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.