Commit b6074aac by Vladislav

#20434 Загрузка и синхронизация sitelinks

1 parent afbd8523
...@@ -29,12 +29,12 @@ class AddSitelinks extends DirectRequest ...@@ -29,12 +29,12 @@ class AddSitelinks extends DirectRequest
public function getObjectsCount() public function getObjectsCount()
{ {
return count($this->getParams()['AdExtensions']); return count($this->getParams()['SitelinksSets']);
} }
public function slice($maxObjects): ?APIRequest public function slice($maxObjects): ?APIRequest
{ {
$splinter = $this->sliceByKey($maxObjects, 'AdExtensions'); $splinter = $this->sliceByKey($maxObjects, 'SitelinksSets');
$splinter->putParams([ $splinter->putParams([
'goalSitelinks' => $this->goalSitelinks->slice($maxObjects)->values(), 'goalSitelinks' => $this->goalSitelinks->slice($maxObjects)->values(),
...@@ -59,9 +59,9 @@ class AddSitelinks extends DirectRequest ...@@ -59,9 +59,9 @@ class AddSitelinks extends DirectRequest
$goalSitelink = $this->goalSitelinks->get($key); $goalSitelink = $this->goalSitelinks->get($key);
if (!isset($add_result['Id'])) { if (!isset($add_result['Id'])) {
Log::debug("AddAdExtension, empty Id"); Log::debug("AddSitelink, empty Id");
Log::debug($add_result); Log::debug($add_result);
Log::debug($this->getParams()['AdExtensions'][$key]); Log::debug($this->getParams()['SitelinksSets'][$key]);
$goalSitelink->update([ $goalSitelink->update([
'reserve_create_at' => null, 'reserve_create_at' => null,
...@@ -100,7 +100,7 @@ class AddSitelinks extends DirectRequest ...@@ -100,7 +100,7 @@ class AddSitelinks extends DirectRequest
private function requestPrepare($params) private function requestPrepare($params)
{ {
$this->setService('AdExtensions'); $this->setService('Sitelinks');
$this->setMethod('add'); $this->setMethod('add');
$this->putParams($params); $this->putParams($params);
...@@ -121,7 +121,9 @@ class AddSitelinks extends DirectRequest ...@@ -121,7 +121,9 @@ class AddSitelinks extends DirectRequest
return [ return [
'Sitelinks' => array_map(function ($link) use ($list) { 'Sitelinks' => array_map(function ($link) use ($list) {
return StrReplaceByVariables::getInstance($link, $list)->get(); return array_map(function ($value) use ($list) {
return StrReplaceByVariables::getInstance($value, $list)->get();
}, array_filter($link));
}, $goalSitelink->sitelink->links), }, $goalSitelink->sitelink->links),
]; ];
......
...@@ -88,7 +88,7 @@ class GetSitelinks extends DirectRequest ...@@ -88,7 +88,7 @@ class GetSitelinks extends DirectRequest
$this->setMethod('get'); $this->setMethod('get');
$params = [ $params = [
"FieldNames" => [ "FieldNames" => [
"Id", "Sitelinks", "Id",
], ],
"SitelinkFieldNames" => [ "SitelinkFieldNames" => [
"Title", "Href", "Description", "Title", "Href", "Description",
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!