Wie man einen Wert sendet, wenn man auf einen Beitrag klickt, der aus der Datenbank in WordPress abgefragt wird

Lesezeit: 2 Minuten

Benutzeravatar von David Biga
David Biga

Ich versuche, eine Übersichtsfunktion mit Colorbox in WordPress zu erstellen.

Lassen Sie mich ein wenig erklären. In WordPress haben Seiten Beiträge, die über diesen Code abgefragt werden:

$lastposts = get_posts( $args );
foreach($lastposts as $post) : setup_postdata($post); 
get_template_part( 'content', get_post_format() ); 
endforeach;

Dadurch werden alle Beiträge erfasst, die sich in der WordPress-Datenbank befinden. Jetzt ist jeder Post ein Produkt, also möchte ich wissen, ob es eine Möglichkeit gibt, Code hinzuzufügen, um jedem Post einen Wert zuzuweisen, der, sobald jemand auf das Post-Bild klickt, den Titel dieses Posts sendet Es kann eine Übersichtsvorlage (etwas, das ich erstellen werde) dieses bestimmten Produkts abrufen.

AKTUALISIEREN:

Hier ist die jQuery, die sich öffnet, sobald auf ein beliebiges Bild geklickt wird:

<link media="screen" rel="stylesheet" href="https://stackoverflow.com/questions/13945260/<?php echo get_template_directory_uri(); ?>/js/colorbox.css" />
<script src="<?php echo get_template_directory_uri(); ?>/js/jquery.colorbox-min.js" type="text/javascript"></script>

<script type="text/javascript">
    $(function()
    {
        $('.item-post a').colorbox({opacity:0.3, href:"../overviewa512454dzdtfa"});
    });
</script>

Ich möchte, dass der Titel des Beitrags, mit dem das Bild verknüpft ist, an die Datei gesendet wird, die in Colorbox geöffnet wird.

Ich würde ein setzen rel="<?= $post['title'] ?>" in Ihren Links, sodass jeder Link den Beitragstitel hat. (Entschuldige Falls $post['title']” ist nicht das richtige Attribut für den WP-Beitrag, aber Sie werden das finden). Übergeben Sie dann in Ihrem Javascript den Titel in der URL, wie zum Beispiel:

<script type="text/javascript">
    $(function()
    {
        $('.item-post a').bind('click',function() {
            event.preventDefault();
            var product_title = $(this).attr('rel');
            colorbox({opacity:0.3, href:"../overviewa512454dzdtfa?title=" + product_title});
        });
    });
</script>

Sie sollten entweder den Titel, den Sie übergeben, innerhalb der URL codieren rel=" -Tag oder tun Sie es mit Javascript, wenn Sie es an die Farbbox übergeben.

Dann die Übersichtsseite, mit der Sie auf den Titel zugreifen können $_REQUEST['title'].

content-page.php, content-aside.php usw. sind die Dateien, die in Ihrem WP-Design verwendet werden, um Ihre Produkte in Ihrer Schleife auszugeben, aufgrund dieser Zeile in Ihrem Code:

get_template_part( 'content', get_post_format() ); 

Im Grunde müssen Sie also nur diese Dateien öffnen und in dem Teil, der den Inhalt jedes Beitrags ausgibt, das Beitragsbild mit einem Anker umgeben, der die ID Ihres Beitrags verwendet (<a href="#" id="post-<?php the_ID(); ?>">

Dann können Sie die entsprechende Übersicht ganz einfach über die ID in Ihrer jQuery-Abfrage “zielen” …

1402430cookie-checkWie man einen Wert sendet, wenn man auf einen Beitrag klickt, der aus der Datenbank in WordPress abgefragt wird

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy