Clicky

Skocz do zawartości


Zdjęcie
- - - - -

Integracja strony z Wordpress

8 odpowiedzi w tym temacie

  • Zaloguj się, aby dodać odpowiedź

#1 hitch90

hitch90

    Początkujący

  • Użytkownik
  • Pip
  • 16 postów

Napisano 05 styczeń 2014 - 10:53

Witajcie :)
 
Od kilku dni szukam rozwiązania swojego problemu i kiepsko mi idzie. 
 
Otóż chcę połączyć Wordpressa ze swoim CMSem (tak, jest sens takiego połączenia!). Z Wordpressa chcę pobierać jak na razie tylko treść/wpisy (może później coś dalej)
 
Skorzystałem się z tego:

define('WP_USE_THEMES', false);

require('./wp/wp-blog-header.php');

I wyświetliłem treść w taki sposób:

<div class="center-content">
<?php
$i = 0;
if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php $post_image_id = get_post_thumbnail_id($post_to_use->ID);
        if ($post_image_id) {
            $thumbnail = wp_get_attachment_image_src( $post_image_id, 'post-thumbnail', false);
            if ($thumbnail) (string)$thumbnail = $thumbnail[0];
        } ?>
<?php if ($i==0){?>
<div class="center-news-80" style="background-image:url(<?php echo $thumbnail; ?>);">
<?php $i++; } elseif ($i==1){?>
<div class="center-news-20" style="background-image:url(<?php echo $thumbnail; ?>);">
<?php $i++; }else{ ?>
<div class="center-news-33" style="background-image:url(<?php echo $thumbnail; ?>);">
<?php }?>
    <div class="overlay"></div>
    <div class="corner-overlay-content"><h2><?php the_title() ;?></h2></div>
                <div class="jaka-gra"><?php the_category(', '); ?></div>
                <div class="overlay-content">
                    <?php the_title('<h3><a href="' . get_permalink() . '" title="' . the_title_attribute('echo=0') . '" rel="bookmark">', '</a></h3>'); ?>
                    <p><?php the_content(); ?></p>
                </div>
</div>


<?php endwhile; else: ?>

    <p>Sorry, this post does not exist</p>

<?php endif; ?>

</div>

I to działa - na localhoście bez problemów, a na serwerze już nie.

 

Gdy tylko włącze przyjazne linki w Wordpressie coś się dzieje i na adresie: nazwadomeny.pl działa wszystko poprawnie, a na nazwadomeny.pl/home lub /home/pl

 

Rozplanowanie na serwerze mam takie:

główny katalog - nazwadomeny.pl

podkatalog z wordpressem - wp.nazwadomeny.pl

(nie chciałbym na razie podawać adresów, ale jak trzeba będzie to no cóż)



#2 sbl

sbl

    Początkujący

  • Webmastahy
  • Pip
  • 55 postów
  • Skąd:Wrocław

Napisano 07 styczeń 2014 - 03:51

Nie lepiej pobierać wpisy za pomocą XML (RSS). SimpleXML w PHP radzi sobie z tym.


Sent from my iPad using Tapatalk

#3 hitch90

hitch90

    Początkujący

  • Użytkownik
  • Pip
  • 16 postów

Napisano 07 styczeń 2014 - 10:36

Hm, z tego co widzę to musiałbym dopisać nową klasę do swojego CMS. Niestety nie umiem programować na tyle by to zrobić (staram się wykorzystać to co już mam lub szukać gotowych rozwiązań i modyfikować je dla siebie).



#4 sbl

sbl

    Początkujący

  • Webmastahy
  • Pip
  • 55 postów
  • Skąd:Wrocław

Napisano 07 styczeń 2014 - 12:38

Hm, z tego co widzę to musiałbym dopisać nową klasę do swojego CMS. Niestety nie umiem programować na tyle by to zrobić (staram się wykorzystać to co już mam lub szukać gotowych rozwiązań i modyfikować je dla siebie).

 

Czytanie XML jest o tyle proste, że klasa SimpleXML zwraca takiego XML w postaci obiektowej, więc odnosisz się do kanałów RSS za pomocą $xml->channel->title itd.

 

Tutaj masz przykład użycia SimpleXML oraz kanału RSS: 

http://blog.stuarthe...arse-rss-feeds/



#5 hitch90

hitch90

    Początkujący

  • Użytkownik
  • Pip
  • 16 postów

Napisano 07 styczeń 2014 - 13:09

Dzięki wielkie, może uda mi się coś wskórać. W razie problemów będę pytać ;)

 

ok, doszedłem jak to działa i mam jeden problem -> tło newsa na stronie jest miniaturką wpisu. RSS nie przekazuje w żaden sposób adresu do obrazka/miniaturki.


Użytkownik hitch90 edytował ten post 07 styczeń 2014 - 13:16


#6 sbl

sbl

    Początkujący

  • Webmastahy
  • Pip
  • 55 postów
  • Skąd:Wrocław

Napisano 07 styczeń 2014 - 15:44

Dzięki wielkie, może uda mi się coś wskórać. W razie problemów będę pytać ;)

 

ok, doszedłem jak to działa i mam jeden problem -> tło newsa na stronie jest miniaturką wpisu. RSS nie przekazuje w żaden sposób adresu do obrazka/miniaturki.

 

Właśnie skończyłem pisać na mastaha wpis poświęcony parsowaniu plików XML w PHP, więc w najbliższych dniach powinien się ukazać.

Co do obrazków, to w RSS takich rzeczy nie ma :) możesz ewentualnie napisać sobie plugin,skrypt do WordPressa, który wyciąga odpowiednie informacje jakie potrzebujesz. Daj znać czy sobie poradziłeś, jeśli nie to w wolnej chwili napiszę kolejny wpis, który pokaże jak napisać prosty skrypt wyciągający odpowiednie wpisy z WordPressa i udostępni je za pomocą XML.



#7 phpion

phpion

    Senior Mastah

  • Użytkownik
  • PipPipPip
  • 774 postów
  • Skąd:Sosnowiec, Dąbrowa Górnicza

Napisano 07 styczeń 2014 - 15:55

Wordpress ma przecież swoje API:

http://codex.wordpre...C_WordPress_API

W zwracanej strukturze:

http://codex.wordpre...osts#wp.getPost

masz m.in. post_thumbnail - o tą właściwość chyba Ci chodzi.


Notifero - Technologie Informatyczne | Warsztat: Kohana 3.x/2.x + PostgreSQL/MySQL | Programista Kohana

#8 hitch90

hitch90

    Początkujący

  • Użytkownik
  • Pip
  • 16 postów

Napisano 07 styczeń 2014 - 20:43

Dzięki za odpowiedzi, ale nic z tego. Nie rozumiem jak działa to API, a przykładów społeczności na próżno szukać.

Przecierpię i zostawię 'nie'przyjazne linki ;)

#9 phpion

phpion

    Senior Mastah

  • Użytkownik
  • PipPipPip
  • 774 postów
  • Skąd:Sosnowiec, Dąbrowa Górnicza

Napisano 08 styczeń 2014 - 08:18

Tutaj masz info jak włączyć obsługę XML-RPC (o ile masz wyłączoną):

http://codex.wordpre...XML-RPC_Support

Tutaj natomiast masz przykład jak wysłać żądanie i odebrać odpowiedź (przykład w PHP na dole):

http://codex.wordpre.../wp.getComments


Notifero - Technologie Informatyczne | Warsztat: Kohana 3.x/2.x + PostgreSQL/MySQL | Programista Kohana




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych