Example #1
0
 /**
  * AdContents constructor.
  * @param Application $app
  * @param Product $product
  */
 public function __construct(Application $app, Product $product)
 {
     $shop_name = $app['eccube.repository.base_info']->get()->getShopName();
     $homepage_url = $app->url('homepage');
     $product_url = $app->url('product_detail', array('id' => $product->getId()));
     $this->headline = CsvContentsUtil::clipText($product->getName(), 15);
     $this->description1 = CsvContentsUtil::clipText($product->getDescriptionDetail(), 19);
     $this->description2 = CsvContentsUtil::clipText($shop_name, 19);
     $this->display_url = CsvContentsUtil::removeHttpText(CsvContentsUtil::clipText($homepage_url, 29));
     $this->link_url = CsvContentsUtil::clipText($product_url, 1024);
     $now = new \DateTime();
     $ad_name = $now->format('Ymd') . '_' . str_pad($product->getId(), 4, 0, STR_PAD_LEFT);
     $this->ad_inner_name = CsvContentsUtil::clipText($ad_name, 50);
 }
 /**
  * @param Product $product
  * @param AdContents $ad_contents
  */
 private function createAdGroupWithSearchWord(Product $product, AdContents $ad_contents)
 {
     $group_name = CsvContentsUtil::clipText($product->getName() . '×' . '検索ワード', 50);
     $group = new AdGroup($group_name, $ad_contents);
     $search_word = $product->getSearchWord();
     $keywords = preg_split('/[\\s 、,]+/u', $search_word, -1, PREG_SPLIT_NO_EMPTY);
     foreach ($keywords as $word) {
         $group->addKeyword($product->getName() . ' ' . $word);
     }
     if (!empty($group->getKeywords())) {
         array_push($this->ad_groups, $group);
     }
 }
Example #3
0
 /**
  * @param string
  */
 public function addKeyword($keyword)
 {
     $keyword = CsvContentsUtil::clipText($keyword, 80);
     array_push($this->keywords, $keyword);
 }