рдЖрдЙрдЯрдкреБрдЯ WordPress рд╕рд╛рдЗрдЯ рд╕реЗ рдкреЛрд╕реНрдЯ рдХрд░рддрд╛ рд╣реИ



рдЙрджреНрджреЗрд╢реНрдп:


рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдореИрдВ рдЕрдкрдиреЗ рд▓рд┐рдП рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ: рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦреЗрдВ рдЬреЛ рдореЗрд░реА рд╕рд╛рдЗрдЯ рд╕реЗ рдХрдИ рдкреЛрд╕реНрдЯ рдХреЛ рдердВрдмрдиреЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧреАред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд░рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд╛рд░реНрдп рдХрд╛ рд╕рд╛рд░ рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрд┐рд╕реА рднреА рдЗрдВрдЬрди рд╕реЗ рдХрд┐рд╕реА рднреА рд╕рд╛рдЗрдЯ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдФрд░ рд╕рд╕реНрддреА рдмрдирд╛рдирд╛ рд╣реИред

рдЖрдк рдХрд┐рд╕реА рднреА рдЧреЗрдо рдХреЛ рдЦреЛрд▓рдХрд░ рдореЗрд░реЗ game.tobefun.org рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдореИрдВрдиреЗ рд░реИрдВрдбрдо рдердВрдмрдиреЗрд▓ рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд░рд╛рд╢рд┐ (рдпрд╣ рдЖрдкрдХреЗ рд╡рд┐рдВрдбреЛ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ, рдЬреЛ рдЙрди рд░рд┐рдХреЙрд░реНрдбреЛрдВ рдХреЗ рд▓рд┐рдВрдХ рд╣реИрдВ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рд╡реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИрдВред


рдЪрд░рдг 1 - html рджрд╕реНрддрд╛рд╡реЗрдЬрд╝


рдПрдХ HTML рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреА рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрд░рдЪрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <script src="http://code.jquery.com/jquery-2.0.0.js"></script> <!--     --> <script src="http://game.tobefun.org/play/more.js"></script> </head> <body> <div class="more"> <span class="more_game" lang="ru"></span> </div> </body> </html> 

рдЪрд░рдг 2 - рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдПрдХ рдЕрдЬрд╛рдХреНрд╕ рдЕрдиреБрд░реЛрдз рдЙрддреНрдкрдиреНрди


рдкрд╣рд▓реЗ рд╣рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдВрдбреЛ рдХреЗ рдХрд╛рд░реНрдп рдХреНрд╖реЗрддреНрд░ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

  var width = $(window).width(); var height = $(window).height(); 


рддрдм рд╣рдо POST рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рдХреЛ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ
  var width = $(window).width(); var height = $(window).height(); $.post( "more.php", // php-,    { width: logo_width, height: height }, onAjaxSuccess // ,       ); function onAjaxSuccess(data) { //    ,           id="more_game". $("#more_game").html(data); //         $('#more_game').css('height', height); } 


рдЪрд░рдг 3 - рдкреАрдПрдЪрдкреА - рд╣реИрдВрдбрд▓рд░


 <?php /*    $_POST['height'] -   64 -    */ $img_kil = floor($_POST['height']/64); /*        ... */ if ($img_kil >= 1) { // <-   IF /*     ,      */ $db = new PDO('mysql:host='.DB_HOST.';dbname='.DB_NAME, DB_USER, DB_PASSWORD); //    /*        ,      $img_kil         */ $k=$img_kil*3; 


рдЪрд░рдг 3.1 - рдЫрд╡рд┐ рд▓рд┐рдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП SQL рдХреНрд╡реЗрд░реА

рдпрд╣ рддреАрди рднрд╛рдЧреЛрдВ рд╕реЗ рдорд┐рд▓рдХрд░ рдмрдиреЗрдЧрд╛:

1. рдкреНрд░рдХрд╛рд╢рд┐рдд рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рдЖрдИрдбреА рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВ
 SELECT `ID` FROM `wp_posts` WHERE `post_type` = 'post' AND `post_status` = 'publish' 


2. ID рдХреА рддрд╕реНрд╡реАрд░реЛрдВ рдХреЗ рдЪрдпрди рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВ рдЬреЛ рдердВрдмрдиреЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рд╣реИрдВ
 SELECT `meta_value` FROM `wp_postmeta` WHERE `meta_key` = '_thumbnail_id' AND `post_id` IN () 


3. рдЪрдпрдирд┐рдд рдлреЛрдЯреЛ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдзред
 SELECT `post_id`, `meta_value` FROM `wp_postmeta` WHERE `post_id` IN () ND `meta_key` = '_wp_attachment_metadata' 


рд╕рд╛рдорд╛рдиреНрдп рдХреНрд╡реЗрд░реА рдЬреЛ $ k рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдВ рд▓реМрдЯрд╛рдПрдЧреА, рд╡рд╣ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
 $sql=' SELECT `post_id`, `meta_value` FROM `wp_postmeta` WHERE `post_id` IN ( SELECT `meta_value` FROM `wp_postmeta` WHERE `meta_key` = \'_thumbnail_id\' AND `post_id` IN ( SELECT `ID` FROM `wp_posts` WHERE `post_type` = \'post\' AND `post_status` = \'publish\' ) ) AND `meta_key` = \'_wp_attachment_metadata\' ORDER BY RAND() LIMIT '.$k; 


рдЕрдм рдЖрдкрдХреЛ рдЗрд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
 $stmt = $db->query($sql); // fetch mode $stmt->setFetchMode(PDO::FETCH_ASSOC); while($row = $stmt->fetch()) { $img_mass = unserialize($row['meta_value']); /*  $img_mass      Array ( [width] => 1000 [height] => 651 [file] => 2013/01/-.jpg [sizes] => Array ( [thumbnail] => Array ( [file] => --538x350.jpg [width] => 538 [height] => 350 [mime-type] => image/jpeg ) [medium] => Array ( [file] => --300x195.jpg [width] => 300 [height] => 195 [mime-type] => image/jpeg ) [yarpp-thumbnail] => Array ( [file] => --120x120.jpg [width] => 120 [height] => 120 [mime-type] => image/jpeg ) ) [image_meta] => Array ( [aperture] => 0 [credit] => [camera] => [caption] => [created_timestamp] => 0 [copyright] => [focal_length] => 0 [iso] => 0 [shutter_speed] => 0 [title] => ) ) */ list($year, $mount, $name) = explode("/", $img_mass['file']); /* $img_mass['file']='  2013/01/-.jpg'        $year = '2013' $mount = '01' $name = '-.jpg'*/ $img_dir = $year.'/'.$mount.'/'.$img_mass['sizes']['yarpp-thumbnail']['file']; /*        (   'yarpp-thumbnail')*/ $base [] = array ( 'post_id' => $row['post_id'], 'img_dir' => $img_dir); /*  */ } 


рдЪрд░рдг рей.реи - рд░рд┐рдХреЙрд░реНрдбреНрд╕ рдХреЗ рд▓рд┐рдВрдХ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП SQL рдХреНрд╡реЗрд░реА

 $k_post = sizeof($base); //     for ($i=0; $i<$k_post; $i++) { /*         */ $sql=' SELECT `post_title`, `post_name` FROM `wp_posts` WHERE `ID` IN ( SELECT `post_id` FROM `wp_postmeta` WHERE `meta_value` = '.$base[$i]['post_id'].' )'; /*   */ $stmt = $db->query($sql); $stmt->setFetchMode(PDO::FETCH_ASSOC); /* */ while($row = $stmt->fetch()) { echo '<a href="http://game.tobefun.org/'.$row['post_name'].'.html" title="'.$row['post_title'].'"><img width="120" height="120" src="http://game.tobefun.org/wp-content/uploads/'.$base[$i]['img_dir'].'"></a>'; } } $db = null; //  } // <-    IF ?> 

Source: https://habr.com/ru/post/In180001/


All Articles