Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Есть раздел услуг, который реализован выпадающим списком madwrappers.ru

Сдела что бы появились услуги в сайтпаме, но появились только первые три.

Пытаюсь прописать отальные вот так 

foreach($simpla->service->get_categories() as $c)
{
  if($c->visible)
  {
    $url = $simpla->config->root_url.'/service/'.esc($c->url);
    print "\t<url>"."\n";
    print "\t\t<loc>$url</loc>"."\n";
    print "\t</url>"."\n";
  }
}

и выдает ошибку при создании Call to a member function get_categories() on a non-object in /home/virtwww/w_madwrappers6zz_d00d1be6/http/sitemap.php on line 50

<?php

require_once('api/Simpla.php');
$simpla = new Simpla();

header("Content-type: text/xml; charset=UTF-8");
print '<?xml version="1.0" encoding="UTF-8"?>'."\n";
print '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">'."\n";

// Главная страница
$url = $simpla->config->root_url;
$lastmod = date("Y-m-d");
print "\t<url>"."\n";
print "\t\t<loc>$url</loc>"."\n";
print "\t\t<lastmod>$lastmod</lastmod>"."\n";
print "\t</url>"."\n";

// Страницы
foreach($simpla->pages->get_pages() as $p)
{
  if($p->visible && $p->menu_id == 1)
  {
    $url = $simpla->config->root_url.'/'.esc($p->url);
    print "\t<url>"."\n";
    print "\t\t<loc>$url</loc>"."\n";
    print "\t</url>"."\n";
  }
}

// Блог
foreach($simpla->blog->get_posts(array('visible'=>1)) as $p)
{
  $url = $simpla->config->root_url.'/blog/'.esc($p->url);
  print "\t<url>"."\n";
  print "\t\t<loc>$url</loc>"."\n";
  print "\t</url>"."\n";
}
  // Услуги
foreach($simpla->services->get_categories() as $c)
{
  if($c->visible)
  {
    $url = $simpla->config->root_url.'/services/'.esc($c->url);
    print "\t<url>"."\n";
    print "\t\t<loc>$url</loc>"."\n";
    print "\t</url>"."\n";
  }
}
  
// Категории
foreach($simpla->categories->get_categories() as $c)
{
  if($c->visible)
  {
    $url = $simpla->config->root_url.'/catalog/'.esc($c->url);
    print "\t<url>"."\n";
    print "\t\t<loc>$url</loc>"."\n";
    print "\t</url>"."\n";
  }
}

// Бренды
foreach($simpla->brands->get_brands() as $
{
  $url = $simpla->config->root_url.'/brands/'.esc($b->url);
  print "\t<url>"."\n";
  print "\t\t<loc>$url</loc>"."\n";
  print "\t</url>"."\n";
}

// Товары
$simpla->db->query("SELECT url FROM __products WHERE visible=1");
foreach($simpla->db->results() as $p)
{
  $url = $simpla->config->root_url.'/products/'.esc($p->url);
  print "\t<url>"."\n";
  print "\t\t<loc>$url</loc>"."\n";
  print "\t</url>"."\n";
}

print '</urlset>'."\n";

function esc($s)
{
  return(htmlspecialchars($s, ENT_QUOTES, 'UTF-8'));  
}
 

 

Ссылка на сообщение
Поделиться на другие сайты

Ошибка со всеми деталями Вам предоставлена.

Чтобы работало $simpla->services, надо, чтобы

1. Был соответсвенно оформленный api/Services.php

2. В api/Simpla.php было что-то типа

    private $classes = array(
        'services'     => 'Services',

 

Ссылка на сообщение
Поделиться на другие сайты

Ошибка со всеми деталями Вам предоставлена.

Чтобы работало $simpla->services, надо, чтобы

1. Был соответсвенно оформленный api/Services.php

2. В api/Simpla.php было что-то типа

    private $classes = array(

        'services'     => 'Services',

 

с эти проблем нет

 

  // Услуги
foreach($simpla->services->get_categories() as $c)
{
  if($c->visible)
  {
    $url = $simpla->config->root_url.'/services/'.esc($c->url);
    print "\t<url>"."\n";
    print "\t\t<loc>$url</loc>"."\n";
    print "\t</url>"."\n";
  }
}
 

проблема с service

 

// Свойства - Классы API
  private $classes = array(
    'config'     => 'Config',
    'request'    => 'Request',
    'db'         => 'Database',
    'settings'   => 'Settings',
    'design'     => 'Design',
    'products'   => 'Products',
    'variants'   => 'Variants',
    'categories' => 'Categories',
    'brands'     => 'Brands',
    'features'   => 'Features',
    'money'      => 'Money',
    'pages'      => 'Pages',
    'blog'       => 'Blog',
    'cart'       => 'Cart',
    'image'      => 'Image',
    'delivery'   => 'Delivery',
    'payment'    => 'Payment',
    'orders'     => 'Orders',
    'users'      => 'Users',
    'coupons'    => 'Coupons',
    'comments'   => 'Comments',
    'feedbacks'  => 'Feedbacks',
    'notify'     => 'Notify',
    'services'   => 'Services',
    'service'    => 'Service',
    'managers'   => 'Managers'
  );

ошибка

 

https://madwrappers.ru 2017-09-10 https://madwrappers.ru/ https://madwrappers.ru/catalog/magazine https://madwrappers.ru/catalog/nashi-raboty https://madwrappers.ru/services https://madwrappers.ru/tseny https://madwrappers.ru/blog https://madwrappers.ru/oplata https://madwrappers.ru/contacthttps://madwrappers.ru/blog/effektivnaya-zashita-kuzova-avtomobilya-sredstvom-keramik-pro-9n https://madwrappers.ru/blog/estetika-i-zaschischennost-avto https://madwrappers.ru/blog/rasskazhem-v-chem-otlichie-ceramic-pro-9h-i-ceramic-pro-light https://madwrappers.ru/blog/rassmotrim-preimuschestva-keramik-pro-9n-v-sravnenii-s-zhidkim-steklom https://madwrappers.ru/blog/antigravijnaya-poliuretanovaya-zaschita-hexis-bodyfence https://madwrappers.ru/blog/rasskazhem-o-antigravijnoj-plenki-suntek-i-ceramic-pro https://madwrappers.ru/blog/pokrytie-avtomobilya-antigraviem https://madwrappers.ru/blog/zaschita-lkp-avtomobilya https://madwrappers.ru/blog/chem-pokryt-porogi-ot-korrozii https://madwrappers.ru/blog/chem-zaschitit-kuzov-avtomobilya https://madwrappers.ru/blog/chem-horosha-laminatsiya-zaschitnoj-plenkoj-https://madwrappers.ru/blog/vinilovaya-plenka-kpmf-dlya-zaschity-avtomobilya https://madwrappers.ru/services/oklejka-avtomobilya https://madwrappers.ru/services/zaschita-avtomobilya https://madwrappers.ru/services/oklejka-poliuretanovoj-plenkoj 
Warning: include_once(/home/virtwww/w_madwrappers6zz_d00d1be6/http/api/Service.php) [function.include-once]: failed to open stream: No such file or directory in /home/virtwww/w_madwrappers6zz_d00d1be6/http/api/Simpla.php on line 76
 
Warning: include_once() [function.include]: Failed opening '/home/virtwww/w_madwrappers6zz_d00d1be6/http/api/Service.php' for inclusion (include_path='.:') in /home/virtwww/w_madwrappers6zz_d00d1be6/http/api/Simpla.php on line 76
 
Fatal error: Class 'Service' not found in /home/virtwww/w_madwrappers6zz_d00d1be6/http/api/Simpla.php on line 79
 
Изменено пользователем madwp
Ссылка на сообщение
Поделиться на другие сайты

Ошибка расписана Вам точно - не найден файл api/Service.php ...

а почему он там должен был быть ?есть service.tpl

 

 

 

 

А почему не использовать стандартную выборку?

$simpla->categories->get_categories()

потому что оно не имеет отношения к тем категориям

Ссылка на сообщение
Поделиться на другие сайты

Проблему решил 

    // Услуги2
foreach($simpla->services->get_services() as $c)
{
  if($c->visible)
  {
    $url = $simpla->config->root_url.'/service/'.esc($c->url);
    print "\t<url>"."\n";
    print "\t\t<loc>$url</loc>"."\n";
    print "\t</url>"."\n";
  }
}

Вопрос еще по второму файл yandex.php он вообще написан для яндекса, а так ли это ? яндекс и тот и тот файл воспринимает помоему отлично, в чем отличие ? хотя с ошибкой яндекс читает yandex.xml

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...