2017-01-11 4 views
2

Мне нужно создать документ PDF с страницы сведений о продукте моего сайта WP, и я извлечу весь код html со страницы, чтобы экстраполировать тег img и table. Я установил плагин для создания PDF-документа со страницы, но изображения и таблицы не вставлены: только текст вставляется в документ.Извлечь html-код со страницы с PHP для экстраполяции некоторых изображений

Плагин - это woocommercePrintProduct, и я отредактировал его код для вставки изображений в документ PDF. Функция, которая должна быть изменена следующим:

div class="descrizione" style="margin:0 30px;"> 
      <div class="colonnaSx" style="float:left;width:350px;margin-right:30px"> 
       <div class="pacchettino"> 
        <?php if(get_field('descrizione_prod')): ?> 
         <h3>DESCRIPTION</h3> 
         <p><?php the_field('descrizione_prod'); ?></p> 
        <?php endif; ?> 
       </div> 

       <div class="pacchettino"> 
        <?php if(get_field('forma')): ?> 
         <h3>SHAPE</h3> 
         <p><?php the_field('forma'); ?></p> 
        <?php endif; ?> 
       </div> 

       <div class="pacchettino"> 
        <?php if(get_field('posa')): ?> 
         <h3>INSTALLATION</h3> 
         <p><?php the_field('posa'); ?></p> 
        <?php endif; ?> 
       </div> 

       <div class="pacchettino"> 
        <?php if(get_field('conduttore')): ?> 
         <h3>CONDUCTOR</h3> 
         <p><?php the_field('conduttore'); ?></p> 
        <?php endif; ?> 
       </div> 

       <div class="pacchettino"> 
        <?php if(get_field('isolante')): ?> 
         <h3>INSULATION</h3> 
         <p><?php the_field('isolante'); ?></p> 
        <?php endif; ?> 
       </div> 

       <div class="pacchettino"> 
        <?php if(get_field('guaina')): ?> 
         <h3>SHEAT</h3> 
         <p><?php the_field('guaina'); ?></p> 
        <?php endif; ?> 
       </div> 

       <div class="pacchettino"> 
        <?php if(get_field('sforzo_massimo_di_tiro')): ?> 
         <h3>MAX MECHANICAL STRESS</h3> 
         <p><?php the_field('sforzo_massimo_di_tiro'); ?></p> 
        <?php endif; ?> 
       </div> 

       <div class="pacchettino"> 
        <?php if(get_field('guainetta')): ?> 
         <h3>INTERNAL SHEATH</h3> 
         <p><?php the_field('guainetta'); ?></p> 
        <?php endif; ?> 
       </div> 
      </div> 

      <div class="colonnaDx" style="float:right;width:350px;"> 
       <div class="pacchettino"> 
        <?php if(get_field('marchiatura')): ?> 
         <h3>MARCHIATURA</h3> 
         <p><?php the_field('marchiatura'); ?></p> 
        <?php endif; ?> 
       </div> 

       <div class="pacchettino"> 
        <?php if(get_field('colore')): ?> 
         <h3>COLORE</h3> 
         <p><?php the_field('colore'); ?></p> 
        <?php endif; ?> 
       </div> 

       <div class="pacchettino"> 
        <?php if(get_field('tensione_di_esercizio')): ?> 
         <h3>TENSIONE DI ESERCIZIO</h3> 
         <p><?php the_field('tensione_di_esercizio'); ?></p> 
        <?php endif; ?> 
       </div> 

     <?php /* 
     <table class="description"> 
      <?php 
      $description = wpautop($this->data->description); 
      $description = preg_replace("/\[[^\]]+\]/", '', $description); 
      $description = explode('<p>', $description); 
      foreach ($description as $value) { 
      ?> 
       <tr> 
        <td style="padding-bottom: 20px;"> 
         <?php echo $value ?> 
        </td> 
       </tr> 
       <?php 
      } 
      ?> 

     </table> 

     */ 
     ?> 

     <div class="description" style="margin:0 30px;"> 
      <?php 
       $description = wpautop($this->data->description); 
       $description = preg_replace("/\[[^\]]+\]/", '', $description); 
       $description = explode('<p>', $description); 
       foreach ($description as $value) { 
      ?> 

       <div class="pacchettino" style="padding-bottom: 20px;margin:0 30px;"> 
        <?php 
         echo $value 
        ?> 
       </div> 

      <?php 
      } 
      ?> 

     </div> 


     <?php 

     return ob_get_clean(); 

    } 

Я думал извлекать HTML-код на странице детали продукта, а затем экстраполировать IMG тега и intert их в документ.

Помогите мне, пожалуйста?

+0

Как называется плагин? –

+0

плагин woocommercePrintProduct, и я отредактировал его код для вставки изображений в документ PDF –

ответ

0

Есть много, гораздо более простые решения для этого.

Я рекомендую WKHTMLtoPDF, это с открытым исходным кодом, без браузера, без приложения, просто командной строки, чрезвычайно просто. http://wkhtmltopdf.org/downloads.html

Как использовать: После установки по ссылке выше Открыть CMD быстрой Тип в

wkhtmltopdf {website} {filename to save as} 

Пример:

wkhtmltopdf http://google.com google.pdf 

Руководство пользователя: http://wkhtmltopdf.org/usage/wkhtmltopdf.txt

Там число другие программы и даже онлайн-инструменты, которые могут выполнять именно то, что вы просите бесплатно, многие даже имеют открытый исходный код, подобный тому, который приведен выше. Нет смысла бить квадратный штифт, чтобы поместиться в круглое отверстие, когда вы можете бесплатно получить цилиндры.

 Смежные вопросы

  • Нет связанных вопросов^_^