Jump to content


Photo
- - - - -

[Рецепт] Верстка карточки товара - генерация текста

генерация текста

4 replies to this topic

#1 CB9TOIIIA

CB9TOIIIA
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 14 October 2016 - 18:08

Всем привет! Верстаю карточку товара и делюсь опытом :) 

 

Сегодня сделал автогенерацию текста из артикула, цены, скидки, и имени товара.

 

Примерно так:

 

Pl36uo43QZk.jpg
 
 
Код:
 
  1.  
  2. <?php
  3. $nomercat = $item->getElement('d60e15cc-e340-4666-a748-9ee970bf3f5a')->data();
  4. $nomercat = $this->app->data->create($nomercat);
  5. $nomercat = $nomercat->find('0.value', 'Уточняйте по телефону');
  6.  
  7. $priceget = $item->getElement('f4483451-befa-4f92-b5bf-e2e9c3e90283')->data()->variations;
  8. $priceget = $this->app->data->create($priceget);
  9. $skuitem = $priceget->find('0._sku.value', 'Артикул не найден');
  10. $finddiscount = $priceget->find('0._discount.value', '');
  11. $priceget = $priceget->find('0._value.value', 'Уточняйте по телефону');
  12. $pricegetround = round($priceget,0);
  13.  
  14. if (!empty($finddiscount) && $priceget) {
  15.  
  16. if (preg_match('/\%/',$finddiscount)) {
  17.  
  18. $finddiscount = str_replace('%','',$finddiscount);
  19. $getpricewithdiscount = round($priceget - ($priceget * ($finddiscount / 100)),0);
  20.  
  21. }
  22.  
  23. else {
  24. $getpricewithdiscount = round($priceget - ($priceget * ($finddiscount / 100)),0);
  25. }
  26.  
  27. }
  28. else {
  29. $getpricewithdiscount = $priceget;
  30. }
  31.  
  32.  
  33. ?>
  34.  
  35.  
  36. <p>
  37. <?php echo $item->name ?> за <?php echo $getpricewithdiscount ?> руб. устанавливается на тягачи и самосвалы ОАО КамАЗ.
  38. Номер детали по каталогу: <?php echo $nomercat ?> / артикул: <?php echo $skuitem ?>.
  39. <p> Мы являемся ведущим поставщиков з/ч КамАЗ в Камском регионе и г. Набережные Челны.
  40. </p>
  41.  

 


  • 4

#2 isay777

isay777
  • JBZoo User (rus)
  • User rate: 113.4
  • posts: 1878
  • topics: 232

Posted 31 October 2016 - 20:15

Ну это давно такая штука есть. Еще и в мету все похожее забобахать. 


  • 1
ХОСТИНГ для сайтов jbzoo (все попугаи)

#3 laRus

laRus
  • JBZoo User (rus)
  • User rate: 60
  • posts: 1334
  • topics: 31

Posted 01 November 2016 - 15:32

CB9TOIIIA, on 14 Oct 2016 - 17:08, said:

автогенерацию текста из артикула, цены, скидки, и имени товара
Сенкс!!

isay777, on 31 Oct 2016 - 19:15, said:

это давно такая штука есть
А где это есть такая штука?? ... а я не знала! 

А как тогда 

isay777, on 31 Oct 2016 - 19:15, said:

Еще и в мету все похожее забобахать.
?? А?  (wonder)
  • 1
..minimum effort for maximum effect? - Oh yeah! It's good!..

#4 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 01 November 2016 - 18:25

laRus, on 01 Nov 2016 - 14:32, said:

Сенкс!!

 

 

А где это есть такая штука?? ... а я не знала! 

А как тогда 

 

?? А?  (wonder)

 

  1. $doc->setMetaData( 'og:title', $og_title );
  2. $doc->setMetaData( 'og:type', $og_type );
  3. $doc->setMetaData( 'og:url', $og_url );
  4. $doc->setMetaData( 'og:image', $og_image );
  5. $doc->setMetaData( 'relap-image', $og_image);
  6. $doc->setMetaData( 'og:site_name', $og_site_name );
  7. $doc->setMetaData( 'og:description', $og_desc );

типо того :)


  • 4

#5 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 13 February 2018 - 15:05

Немного переделал для заказчика.

  1. $document = JFactory::getDocument();
  2. $document->setGenerator('');
  3. $document->setMetadata('author', '' );
  4.  
  5. if (empty($item->getParams()->get('metadata.title'))) {
  6. $document->setTitle($item->name.' - ООО «Завод»');
  7. }
  8.  
  9. if (empty($item->getParams()->get('metadata.description'))) {
  10.  
  11. if (empty($getpricewithdiscount)) {
  12. $pricegenzpkv = '';
  13. }
  14. else {
  15. $pricegenzpkv = "за {$getpricewithdiscount} рублей";
  16. }
  17.  
  18. $GenDescr = "У нас Вы можете купить {$item->name} {$pricegenzpkv}. Мы завод производитель." ;
  19. $document->setMetadata('description', $GenDescr );
  20. }
  21.  
  22. if (empty($item->getParams()->get('metadata.keywords'))) {
  23. $keywords = "{$item->name}";
  24. $document->setMetadata('keywords', $keywords );
  25. }
  26.  

  • 2




Click to return to top of page in style!