All add-ons currently require PHP 7.4 or greater.

On July 4th 2024 PHP 8.2 will be the new minimum requirement for all add-ons. Expect any add-on released after that date to require 8.2 or greater. Some releases may not immediately take advantage of 8.x specific features in PHP, which means you might, be able to continue using new releases in PHP 7.4, however, if you experience an error the first thing you should do is update to PHP 8.2 then create a support ticket if the error persists.

Please read about the changes to BoldMinded add-on licensing.

Ticket: cannot submit channel form || No such property publisher_site_pages

Status Resolved
Add-on / Version Publisher 3.1.4
Severity
EE Version 5.3.0

HAMAD AL GAHTANI

Mar 26, 2020

hello I just updated to
when I try to submit a channel form it gives me this error

{"messageType":"error","message":"No such property: 'publisher_site_pages' on EllisLab\\ExpressionEngine\\Legacy\\Facade","trace":["#0 ee\/EllisLab\/ExpressionEngine\/Legacy\/Facade.php(30): EllisLab\\ExpressionEngine\\Legacy\\Facade->get('publisher_site_…')","#1 user\/addons\/publisher\/Service\/Entry\/Entry.php(371): EllisLab\\ExpressionEngine\\Legacy\\Facade->__get('publisher_site_…')","#2 user\/addons\/publisher\/ext.publisher.php(411): BoldMinded\\Publisher\\Service\\Entry\\Entry->saveIgnored(Object(EllisLab\\ExpressionEngine\\Model\\Channel\\ChannelEntry), Array)","#3 ee\/legacy\/libraries\/Extensions.php(222): Publisher_ext->before_channel_entry_save(Object(EllisLab\\ExpressionEngine\\Model\\Channel\\ChannelEntry), Array)","#4 ee\/legacy\/libraries\/Extensions.php(117): EE_Extensions->call_class('Publisher_ext', 'before_channel_…', Array, Array)","#5 [internal function]: EE_Extensions->call('before_channel_…', Object(EllisLab\\ExpressionEngine\\Model\\Channel\\ChannelEntry), Array)","#6 ee\/EllisLab\/ExpressionEngine\/Service\/Model\/Model.php(635): call_user_func_array(Array, Array)","#7 [internal function]: EllisLab\\ExpressionEngine\\Service\\Model\\Model->EllisLab\\ExpressionEngine\\Service\\Model\\{closure}('before_channel_…', Object(EllisLab\\ExpressionEngine\\Model\\Channel\\ChannelEntry), Array)”,”#8 ee\/EllisLab\/ExpressionEngine\/Service\/Model\/Model.php(608): call_user_func_array(Object(Closure), Array)”,”#9 [internal function]: EllisLab\\ExpressionEngine\\Service\\Model\\Model->EllisLab\\ExpressionEngine\\Service\\Model\\{closure}()”,”#10 ee\/EllisLab\/ExpressionEngine\/Service\/Event\/Emitter.php(141): call_user_func_array(Object(Closure), Array)”,”#11 [internal function]: EllisLab\\ExpressionEngine\\Service\\Event\\Emitter->emit('beforeSave')”,”#12 ee\/EllisLab\/ExpressionEngine\/Library\/Data\/Entity.php(654): call_user_func_array(Array, Array)”,”#13 [internal function]: EllisLab\\ExpressionEngine\\Library\\Data\\Entity->emit('beforeSave')”,”#14 ee\/EllisLab\/ExpressionEngine\/Service\/Model\/Model.php(828): call_user_func_array('parent::emit', Array)”,”#15 ee\/EllisLab\/ExpressionEngine\/Service\/Model\/Query\/Insert.php(24): EllisLab\\ExpressionEngine\\Service\\Model\\Model->emit('beforeSave')”,”#16 ee\/EllisLab\/ExpressionEngine\/Service\/Model\/DataStore.php(282): EllisLab\\ExpressionEngine\\Service\\Model\\Query\\Insert->run()”,”#17 ee\/EllisLab\/ExpressionEngine\/Service\/Model\/DataStore.php(238): EllisLab\\ExpressionEngine\\Service\\Model\\DataStore->runQuery('Insert', Object(EllisLab\\ExpressionEngine\\Service\\Model\\Query\\Builder))”,”#18 ee\/EllisLab\/ExpressionEngine\/Service\/Model\/Query\/Builder.php(79): EllisLab\\ExpressionEngine\\Service\\Model\\DataStore->insertQuery(Object(EllisLab\\ExpressionEngine\\Service\\Model\\Query\\Builder))”,”#19 ee\/EllisLab\/ExpressionEngine\/Service\/Model\/Model.php(355): EllisLab\\ExpressionEngine\\Service\\Model\\Query\\Builder->insert()”,”#20 ee\/EllisLab\/ExpressionEngine\/Model\/Content\/ContentModel.php(225): EllisLab\\ExpressionEngine\\Service\\Model\\Model->save()”,”#21 ee\/EllisLab\/Addons\/channel\/libraries\/channel_form\/Channel_form_lib.php(1837): EllisLab\\ExpressionEngine\\Model\\Content\\ContentModel->save()”,”#22 ee\/EllisLab\/Addons\/channel\/mod.channel.php(5703): Channel_form_lib->submit_entry()”,”#23 ee\/legacy\/libraries\/Actions.php(209): Channel->submit_entry()”,”#24 ee\/legacy\/libraries\/Core.php(527): EE_Actions->__construct(true, Object(Closure))”,”#25 ee\/legacy\/controllers\/ee.php(59): EE_Core->generate_action(true)”,”#26 [internal function]: EE->index()”,”#27 ee\/EllisLab\/ExpressionEngine\/Core\/Core.php(241): call_user_func_array(Array, Array)”,”#28 ee\/EllisLab\/ExpressionEngine\/Core\/Core.php(110): EllisLab\\ExpressionEngine\\Core\\Core->runController(Array)”,”#29 ee\/EllisLab\/ExpressionEngine\/Boot\/boot.php(151): EllisLab\\ExpressionEngine\\Core\\Core->run(Object(EllisLab\\ExpressionEngine\\Core\\Request))”,”#30 index.php(173): require_once('...')”,”#31 {main}”]}

#1

BoldMinded (Brian)

Can you please share the channel:form template code you’re using, and remove any extra HTML, I just need to see the EE tags (and the hidden input fields Publisher needs as noted in the documenation).

#2

BoldMinded (Brian)

I think I see what the issue is. In your publisher/Service/Entry/Entry.php file, on line 365, change the function to this:

public function saveIgnored(ChannelEntry $channelEntry, array $entryData = [])
    {
        // Even if it is ignored, we still may need page data to be saved so pages don't 404.
        // Page saving expects an EntryTranslation, so here we are.
        $entryTranslation = ee('Model')->make(EntryTranslation::NAME, $channelEntry->getValues());

        ee()->load->model('publisher_site_pages'); // <---- YOU'RE ADDING THIS LINE HERE
        ee()->publisher_site_pages->save($entryTranslation, $entryData);
    }
#3

HAMAD AL GAHTANI

Thats great problem solved Thanks allot I was using just a normal channel:form tage it was working normally before the last update

#4

BoldMinded (Brian)

Awesome, glad to hear it is working. This change will be included in the next Publisher release.

Login to reply