Nahrání dat před uložením CPT

Úvodní stránka Fórum podpory WordPressu Problémy s WordPressem Nahrání dat před uložením CPT

Zvolené téma obsahuje celkem 4 odpovědi. Do diskuze (2 účastníci) se naposledy zapojil uživatel  kidnec a poslední změna je stará 8 let, 10 měsíců.

Aktuálně je na stránce zobrazeno 5 příspěvků - 1. až 5. (z celkem 5)
  • Autor
    Příspěvky
  • #23661

    kidnec
    Participant
    Web

    Dobrý den,
    řeším problém s CPT které obsahuje videa, chtěl bych před uložením nahrát pár dat a pak jimi přepsat title,url atd.
    nyní to řeším takto, to však funguje až po druhém uložení:

    vkládání nových dat

    add_filter( 'wp_insert_post_data' , 'modify_post_title' , '99', 2 );
    function modify_post_title( $data , $postarr )
    {
      if($data['post_type'] == 'video') {
    	  
    	 $da  = youtubeinfo('title',null,edityturl(false,katalog(null,'yturl',$postarr['ID'])));
    	  
        $data['post_title'] = $da;
    $data['post_name'] = sanitize_title($da);
    
    	}
      return $data;
    }

    funkce katalog pouze řeší výstup jako return hodnoty, popřípadě výstup s řádky, youtubeinfo nahrává data z youtube-

    function youtubeinfo($co,$co2,$id){
    	
    	 
     
     $c = file_get_contents('https://www.googleapis.com/youtube/v3/videos?part=statistics%2Csnippet&id='.$id.'&maxResults=50&key=!!!myappid!!!');
    $objson = json_decode($c, true);
    
    if ($co2){
     return  $objson[items][0][$co][$co2];
    }else {
    return  $objson[items][0][snippet][$co];	
    }
     
     }

    nejspíše to lze řešit pouze pomocí JS/JSON, s tím však nemám moc zkušeností.

    Bohužel se jedná o nevýdělečný projekt, tedy finanční hodnocení by bylo spíše symbolické.

    Každá rada dobrá, děkuji.

    #23662

    sjiamnocna
    Participant
    Web

    Napadá mě plno věcí, které bohužel nic neřeší, jen obcházejí:
    Uložení do post meta a filtrování daných vhttps://codex.wordpress.org/Function_Reference/wp_update_postýstupů, to co jste psala, vlastní zásah do databáze a použití

    #23663

    kidnec
    Participant
    Web

    práve si myslím, že by mnohem efektivnější bylo rovnou vyplnit data pomocí JSON/JS … než po uložení nějak zasahovat a ukládat/přepisovat. …

    taková myšlenka, po vložení yt url by funkce youtubeinfo() přepsaná do js vyplnila chtěná pole, tudíž by už první uložení mělo vše korektně …

    #23664

    sjiamnocna
    Participant
    Web

    Nebo je možné použít wp-ajax, čímž to můžete nechat v php

    #23665

    kidnec
    Participant
    Web

    díky za tip :) … pokud vše dobře dopadne zveřejním výsledek

Aktuálně je na stránce zobrazeno 5 příspěvků - 1. až 5. (z celkem 5)

Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.

WordPress – novinky, návody a zajímavosti