Запись seo текст в таблицу под id 1, как правильно сделать?

Здравствуйте, не силен в php, решил тут вопрос задать.

Есть категория вопрос-ответ, и таблица в бд, категория работает, есть общая категория где видно все вопросы и ответы, так вот в этой общей категории я сделал seo поля, титл, дискрипшион и кеювордс, в этих полях я хочу сохранять seo текста для страницы, чтобы потом выводилось.

Но есть но, не знаю как правильно записывать в id 1, ибо в таблице есть другие id, сами вопросы и ответы.
Щас он мне записывает каждый раз создавая новый id, а я хочу в 1 id записывать эти seo текста и чтобы с этого id 1 и выводило, а не создавала новый id при сохранении.

Не хотел отдельный раздел делать типа seo, где надо было выводить эту форму.

Вот что я намудрил ))

public function action_index()
    {
        
      $voprosotvet = ORM::factory('voprosotvet')
                   ->order_by('sorts', 'DESC')
                   ->find_all();
      
      $id = (int)$this->request->param('id');
      $voprosotvet = ORM::factory('voprosotvet', $id);
      
      if (isset($_POST['submit']))
      {
        $data = Arr::extract($_POST, array('pagetitle', 'description', 'keywords'));
        $voprosotvet = ORM::factory('voprosotvet', 'id', '=', '1');
        $voprosotvet->values($data);
        $voprosotvet->save();
      }
        
      $content = View::factory('admin/voprosotvet/index')
        ->bind('id', $id)
        ->bind('data', $data)
        ->bind('voprosotvet', $voprosotvet);
        
        $this->template->page_title = 'Все вопросы-ответы';
        $this->template->content = $content;
    }


Обычно я делал так, вот пример раздела акции, где тож много акций всяких в виде блоков, в акции можно заходить все дела и читать подробнее.
Я там реализовал отдельный раздел seo, но не удалось записывать в имеющею таблицу акции, записывал в сеттинг, где создал поля, там один id 1, в него записывалось с него и выводилось.

Но это костыльный метод я так понял, хня.

public function action_seoakcii()
    {
        
        $settings = ORM::factory('setting')
                       ->where('id', '=', '1')
                       ->find();
        
        if (isset($_POST['submit']))
        {
            $data = Arr::extract($_POST, array('akciititle', 'akciidescription', 'akciikeywords'));
            $settings->values($data);
            $settings->save();
        }
        $content = View::factory('admin/akcii/seoakcii_index')
                       ->bind('data', $settings);
        
        $this->template->page_title = 'Seo раздела акции';
        $this->template->content = $content;
    }
  • Вопрос задан
  • 85 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы