Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
najnowsze zdjęcia na głównej stronie + wordpress - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: CMSy, Systemy Forów (https://www.webmastertalk.pl/forum-cmsy-systemy-forow)
+--- Wątek: najnowsze zdjęcia na głównej stronie + wordpress (/thread-najnowsze-zdjecia-na-glownej-stronie-wordpress)



najnowsze zdjęcia na głównej stronie + wordpress - harvester2001 - 25-07-2014

Cześć

Mam taki problem, nie wiem jak wyświetlić zdjęcia z najnowszych galerii na stronie głównej.

Chodzi mi o to by wyświetlało cztery zdjęcia na głównej stronie, każde zdjęcie z innej galerii (np. pierwsze zdjęcie w danej galerii) + tytuł galerii
i klikając na któreś z nich by mnie przekierowało bezpośrednio na galerię.
Kompletnie nie potrafię znaleźć takiego rozwiązania. Z najnowszymi wpisami sobie poradziłem ale z galerią nie ;(

Poniżej screen z tym o co mi chodzi
[Obrazek: 1.png]

Dziękuję za pomoc


RE: najnowsze zdjęcia na głównej stronie + wordpress - Kartofelek - 26-07-2014

Mogę ci powiedzieć, jak ja to kiedyś robiłem.
Używałem pluiginu WP Simple Galleries - moim zdaniem jeden z lepszych, mimo że bardzo prosty.
Plugin ten dodaje ci możliwość wgrywania galerii do danej strony czy kategorii elementu. W połączeniu z advanced custom fields daje to naprawdę fajne rozwiązanie i czytelne od strony backendu.

Ja sobie stworzyłem strony o kategorii Galeria. Następnie na stronie głownej robiłem pętlę pobierając wpisy o tej kategorii i dla każdego z nich pobierając zdjęcia. Potem te galerie łączyłem w jedną tablicę (array_merge), Potem ją sortowałem i pobierałem kilka najnowszych zdjęć. Poniżej kod który to robił (po części korzysta z metod, które daje powyższy plugin)

Kod:
<?php
function getThumb($id, $post_id) {
    $url = wp_get_attachment_url($id);
    if (wpsg_of_get_option('wpsimplegallery_use_timthumb', '0') === '1') {
        $width = 190;
        $height = 230;
        $image = array(
                WPSIMPLEGALLERY_URL . 'timthumb.php?src=' . $url . '&q=85&w=' . $width . '&h=' . $height,
                $width,
                $height
            );
    } else {
        $image = wp_get_attachment_image_src($id, array(190,190), true);
    }
    return $image[0];
}

function getImagesInGallery($post_id = false, $nr) {
    global $post;
    global $images;

    $gallery = get_post_meta($post_id, 'wpsimplegallery_gallery', true);
    $gallery = (is_string($gallery)) ? @unserialize($gallery) : $gallery;

    if (is_array($gallery) && count($gallery) > 0) {
        $nr = 0;
        foreach ($gallery as $thumbid) {
            $image =  getThumb($thumbid, $post_id);
            if (!isset($images[$nr])) $images[$nr] = Array();
            array_push($images[$nr], Array($image, get_permalink($post_id)));
            $nr++;
        }
    }
}

$param = array( 'post_type' => 'Galeria');
$loop = new WP_Query( $param );
$images = Array();
$countImages = 0;
while ( $loop->have_posts() ) {
    $loop->the_post();
    getImagesInGallery($post->ID, $galleryNr);
}


$result = Array();
for ($i=0; $i<count($images); $i++) {
    $result = array_merge($result, $images[$i]);
}

if (count($result)<9) {
    $imagesNumber = count($result);
} else {
    $imagesNumber = 9;
}
?>

Aby potem to wyswietlic korzystalem z kodu:

Kod:
<ul>
    <?php
    for ($i = 0; $i<$imagesNumber; $i++) {
        echo '<li><a href="'.$result[$i][1].'"><img src="'.$result[$i][0].'" /></a></li>';
    }
    ?>
</ul>



RE: najnowsze zdjęcia na głównej stronie + wordpress - harvester2001 - 31-07-2014

Wow myślałem że będzie to dużo prostsze, będę musiał się z tym jakoś zmierzyć Smile

Dziękuje za odpowiedź, przepraszam że tak późno ale nie miałem dostępu do kompa.


RE: najnowsze zdjęcia na głównej stronie + wordpress - Kartofelek - 31-07-2014

A nie sorki, mój błąd. Powyższy sposób działa z losowymi zdjęciami. Pewnie da się go przerobić na najnowsze.
Poszukaj jeszcze w necie, bo pewnie są łatwiejsze sposoby. Ja po prostu chciałem wtedy użyć tamtego plugina, bo jak dla mnie jest jednym z fajniejszych.


RE: najnowsze zdjęcia na głównej stronie + wordpress - harvester2001 - 01-08-2014

Przyznam szczerze że szukałem ale nic nie mogłem znaleźć, nie potrafię chyba dobrze zapytać google, bo liczyłem że znajdę coś na anglojęzycznych stronach.


RE: najnowsze zdjęcia na głównej stronie + wordpress - harvester2001 - 01-08-2014

Ok ominąłem to w inny sposób, bardziej zrozumiały dla mnie.

Zrobiłem wpisy o kategorii galeria i wyświetlam je w taki sposób:
Kod PHP:
<?php
        
/* posty z kategorii galeria */       
        
$category_id get_cat_ID('galeria');
        
$catquery = new WP_Query'cat=' .$category_id'&posts_per_page=4&order=DESC' );
        while(
$catquery->have_posts()) : $catquery->the_post();
        
?>

        <div>
            <a href="<?php the_permalink() ?>" rel="bookmark">
                <h4><?php the_title(); ?></h4>
            </a>           
        </div>

        <?php endwhile; ?>



RE: najnowsze zdjęcia na głównej stronie + wordpress - web20 - 24-06-2016

Działa Smile