• Skip to main content
  • Skip to forum navigation

StudioPress

  • Shop for Themes
  • My StudioPress

Forum navigation

  • Home
  • General Genesis Discussions
  • StudioPress Themes
  • Genesis Blocks
    • Genesis Blocks
    • Genesis Custom Blocks
  • Retired Themes
  • FAQs
  • Forum Rules
  • Internationalization and Translations
  • Forum Bugs and Suggestions
  • Forum Log In

Are You Using The WordPress Block Editor?

Genesis now offers plugins that help you build better sites faster with the WordPress block editor (Gutenberg). Try the feature-rich free versions of each plugin for yourself!

Genesis Blocks Genesis Custom Blocks

Problems uploading Prose Child Theme

Welcome!

These forums are for general discussion on WordPress and Genesis. Official support for StudioPress themes is offered exclusively at My StudioPress. Responses in this forum are not guaranteed. Please note that this forum will require a new username, separate from the one used for My.StudioPress.

Log In
Register Lost Password

Community Forums › Forums › Archived Forums › General Discussion › Problems uploading Prose Child Theme

This topic is: not resolved

Tagged: Prose theme

  • This topic has 22 replies, 10 voices, and was last updated 13 years, 4 months ago by NewSeasonDesign.
Viewing 20 posts - 1 through 20 (of 23 total)
1 2 →
  • Author
    Posts
  • January 17, 2013 at 5:46 pm #12754
    lesadale
    Member

    I just uploaded the Prose Child Theme on an existing website.  The theme loaded, but now I can no longer access the WP Dashboard.  Deleting the theme from cPanel, but need to know what happened.

    January 17, 2013 at 7:01 pm #12763
    AnitaC
    Keymaster

    Did you upload Genesis first before uploading Prose? Also, did you upload via Appearance > Themes > Upload or did you use FTP?


    Need help with customization or troubleshooting? Reach out to me.

    January 17, 2013 at 8:52 pm #12787
    NewSeasonDesign
    Member

    I just had an issue with this too. I'm setting up a test site. I installed Genesis and updated it to the newest version. Then I uploaded the newest version of Prose (just downloaded it tonight). When I hit Activate, it told me there was a loop. I uploaded via Appearance > Themes.

    January 17, 2013 at 9:01 pm #12788
    nickthegeek
    Member

    This is a known issue and the fix should be available very soon. Please log into my.studiopress.com and submit a ticket via the Get Help button. Thanks

    January 17, 2013 at 11:32 pm #12805
    ellenstevens
    Member

    I'm experiencing a similar problem.  I received the loop message once, but have since continually been given the following message:

    "You do not have sufficient permissions to access this page."

    I've created a help ticket.  Hopefully, I'll hear something soon.

    January 20, 2013 at 9:13 am #13275
    jdcpar5
    Member

    Has anyone heard anything back on this issue?

    I tried to load and activate Prose on two of my sites, and I'm getting the same "You do not have sufficient permissions to access this page." error. Same error also shows up when using the Live Preview link on the Appearance > Themes panel.  I submitted a ticket, just wondering if anyone found any workarounds?  Thanks

    January 20, 2013 at 10:56 am #13284
    NewSeasonDesign
    Member

    I submitted a help ticket in the My StudioPress area, and they emailed me a fix for it.

    January 20, 2013 at 1:25 pm #13309
    Susan
    Moderator

    I submitted a help ticket in the My StudioPress area, and they emailed me a fix for it.

    Would you be able to include the details of the fix for other users?

    January 20, 2013 at 2:03 pm #13317
    NewSeasonDesign
    Member

    He actually sent me a php file. I can paste here what's in it and where it goes.

    For now please fix your site by accessing it via FTP or control panel based file manager and replace the wp-content/themes/prose/lib/functions/update.php file with the attached file.

    <?php
    /**
    * Handles Prose updates.
    *
    * @since 1.5.0
    * @author StudioPress
    * @license http://www.opensource.org/licenses/gpl-license.php GPL v2.0 (or later)
    * @link http://www.studiopress.com/themes/prose
    */

    /**
    * Pings http://api.genesistheme.com/update-themes/prose/ asking if
    * a new version of this theme is available.
    *
    * If not, it returns false.
    *
    * If so, the external server passes serialized data back to this function,
    * which gets unserialized and returned for use.
    *
    * @since 1.5.0
    *
    * @uses CHILD_THEME_VERSION Prose version string
    *
    * @global string $wp_version WordPress version string
    * @return mixed Unserialized data, or false on failure
    */
    function prose_update_check() {

    global $wp_version;

    /** If updates are disabled */
    if ( ! current_theme_supports( 'prose-auto-updates' ) )
    return false;

    /** Get time of last update check */
    $prose_update = get_transient( 'prose-update' );

    /** If it has expired, do an update check */
    if ( ! $prose_update ) {
    $url = 'http://api.genesistheme.com/update-themes/prose/';
    $options = apply_filters(
    'prose_update_remote_post_options',
    array(
    'body' => array(
    'prose_version' => CHILD_THEME_VERSION,
    'genesis_version' => PARENT_THEME_VERSION,
    'wp_version' => $wp_version,
    'php_version' => phpversion(),
    'uri' => home_url(),
    'user-agent' => "WordPress/$wp_version;",
    ),
    )
    );

    $response = wp_remote_post( $url, $options );
    $prose_update = wp_remote_retrieve_body( $response );

    /** If an error occurred, return FALSE, store for 1 hour */
    if ( 'error' == $prose_update || is_wp_error( $prose_update ) || ! is_serialized( $prose_update ) ) {
    set_transient( 'prose-update', array( 'new_version' => CHILD_THEME_VERSION ), 60 * 60 );
    return false;
    }

    /** Else, unserialize */
    $prose_update = maybe_unserialize( $prose_update );

    /** And store in transient for 24 hours */
    set_transient( 'prose-update', $prose_update, 60 * 60 * 24 );
    }

    /** If we're already using the latest version, return false */
    if ( version_compare( CHILD_THEME_VERSION, $prose_update['new_version'], '>=' ) )
    return false;

    return $prose_update;

    }

    /**
    * Upgrade the database to version 1500.
    *
    * @since 1.5.0
    *
    * @uses _genesis_update_settings()
    */
    function prose_update_1500() {

    /** Calculate new unitless line height */
    $body_line_height = absint( prose_get_design_option( 'body_line_height' ) ) / absint( prose_get_design_option( 'body_font_size' ) );

    /** Update Settings */
    _genesis_update_settings(
    array(
    'theme_version' => '1.5.0',
    'db_version' => '1500',
    'body_line_height' => round( $body_line_height, 3 )
    ),
    PROSE_SETTINGS_FIELD
    );

    /** write CSS to media folder */
    prose_create_stylesheets();

    /** write custom.php to media folder */
    prose_create_custom_php();

    }

    /**
    * Upgrade the database to version 1502.
    *
    * @since 1.5.2
    *
    * @uses _genesis_update_settings()
    */
    function prose_update_1501() {

    /** Update Settings */
    _genesis_update_settings(
    array(
    'theme_version' => '1.5.1',
    'db_version' => '1501',
    ),
    PROSE_SETTINGS_FIELD
    );

    /** Regenerate combined CSS file */
    prose_create_stylesheets();

    }

    /**
    * Upgrade the database to version 1502.
    *
    * @since 1.5.2
    *
    * @uses _genesis_update_settings()
    */
    function prose_update_1502() {

    /** Update Settings */
    _genesis_update_settings(
    array(
    'theme_version' => '1.5.2',
    'db_version' => '1502',
    ),
    PROSE_SETTINGS_FIELD
    );

    /** Regenerate combined CSS file */
    prose_create_stylesheets();

    }

    add_action( 'admin_init', 'prose_update', 20 );
    /**
    * Update Prose to the latest version.
    *
    * This iterative update function will take a Prose installation, no matter
    * how old, and update its options to the latest version.
    *
    * @since 1.5.0
    *
    * @uses CHILD_DB_VERSION
    * @uses PROSE_SETTINGS_FIELD
    *
    * @return null Returns early if we're already on the latest version.
    */
    function prose_update() {

    /** Don't do anything if we're on the latest version */
    if ( prose_get_fresh_design_option( 'db_version' ) >= CHILD_DB_VERSION )
    return;

    ###########################
    # UPDATE DB TO VERSION 1500
    ###########################
    if ( prose_get_fresh_design_option( 'db_version' ) < '1500' )
    prose_update_1500();

    ###########################
    # UPDATE DB TO VERSION 1502
    ###########################
    if ( prose_get_fresh_design_option( 'db_version' ) < '1501' )
    prose_update_1501();

    ###########################
    # UPDATE DB TO VERSION 1502
    ###########################
    if ( prose_get_fresh_design_option( 'db_version' ) < '1502' )
    prose_update_1502();

    do_action( 'prose_update' );

    }

    add_action( 'prose_update', 'prose_update_redirect' );
    /**
    * Redirects the user back to the design settings page, refreshing the data and
    * notifying the user that they have successfully updated.
    *
    * @since 1.5.0
    *
    * @uses genesis_admin_redirect()
    *
    * @return null Returns early if not an admin page.
    */
    function prose_update_redirect() {

    if ( ! is_admin() )
    return;

    genesis_admin_redirect( 'design-settings', array( 'upgraded' => 'true' ) );
    exit;

    }

    add_action( 'admin_notices', 'prose_updated_notice' );
    /**
    * Displays the notice that the design settings were successfully updated to the
    * latest version.
    *
    * @since 1.5.0
    *
    * @uses prose_get_design_option()
    *
    * @return null Returns early if not on the Design Settings page.
    */
    function prose_updated_notice() {

    if ( ! genesis_is_menu_page( 'design-settings' ) )
    return;

    if ( isset( $_REQUEST['upgraded'] ) && 'true' == $_REQUEST['upgraded'] )
    echo '<div id="message" class="updated highlight" id="message"><p><strong>' . sprintf( __( 'Congratulations! You are now rocking Prose %s', 'prose' ), prose_get_design_option( 'theme_version' ) ) . '</strong></p></div>';

    }

    add_filter( 'update_theme_complete_actions', 'prose_update_action_links', 10, 2 );
    /**
    * Filters the action links at the end of an update.
    *
    * This function filters the action links that are presented to the
    * user at the end of a theme update. If the theme being updated is
    * not Prose, the filter returns the default values. Otherwise,
    * it will provide a link to the Prose Design Settings page, which
    * will trigger the database/settings upgrade.
    *
    * @since 1.5.0
    *
    * @param array $actions Existing array of action links
    * @param string $theme Theme name
    * @return string Removes all existing action links in favor of a single link.
    */
    function prose_update_action_links( $actions, $theme ) {

    if ( 'prose' != $theme )
    return $actions;

    return sprintf( '<a href="%s">%s</a>', menu_page_url( 'design-settings', 0 ), __( 'Click here to complete the upgrade', 'prose' ) );

    }

    add_filter( 'site_transient_update_themes', 'prose_update_push' );
    add_filter( 'transient_update_themes', 'prose_update_push' );
    /**
    * Integrate the Prose update check into the WordPress update checks.
    *
    * This function filters the value that is returned when WordPress tries to pull
    * theme update transient data.
    *
    * It uses prose_update_check() to check to see if we need to do an update,
    * and if so, adds the proper array to the $value->response object. WordPress
    * handles the rest.
    *
    * @since 1.5.0
    *
    * @uses prose_update_check()
    *
    * @param object $value
    * @return object
    */
    function prose_update_push( $value ) {

    $prose_update = prose_update_check();

    if ( $prose_update )
    $value->response['prose'] = $prose_update;

    return $value;

    }

    add_action( 'load-update-core.php', 'prose_clear_update_transient' );
    /**
    * Delete Prose update transient after updates or when viewing the Dashboard -> Updates page.
    *
    * The server will then do a fresh version check.
    *
    * @since 1.5.0
    *
    */
    function prose_clear_update_transient() {

    delete_transient( 'prose-update' );

    }

    January 20, 2013 at 3:32 pm #13329
    jdcpar5
    Member

    Thanks for posting that!  Unfortunately, that didn't work for me, so just as a workaround until they fix this, I changed the contents of update.php to this:

    <code><?php
    /**
    * Handles Prose updates.
    *
    * @since 1.5.0
    * @author StudioPress
    * @license http://www.opensource.org/licenses/gpl-license.php GPL v2.0 (or later)
    * @link http://www.studiopress.com/themes/prose
    */

    /**
    * Pings http://api.genesistheme.com/update-themes/prose/ asking if
    * a new version of this theme is available.
    *
    * If not, it returns false.
    *
    * If so, the external server passes serialized data back to this function,
    * which gets unserialized and returned for use.
    *
    * @since 1.5.0
    *
    * @uses CHILD_THEME_VERSION Prose version string
    *
    * @global string $wp_version WordPress version string
    * @return mixed Unserialized data, or false on failure
    */
    function prose_update_check() {
    global $wp_version;
    return false;
    }</code>

    Worked for me.

    January 20, 2013 at 6:52 pm #13370
    panoptic
    Participant

    I am having the sample problem. Why can't support post the fix (php file) to this thread and/or to the forum?

    January 20, 2013 at 6:58 pm #13371
    Susan
    Moderator

    @panoptic - a user (NewSeasonDesign) posted the PHP fix which she received in an e-mail from StudioPress support. If that doesn't work for you, then go ahead and submit a support ticket.

    January 20, 2013 at 7:19 pm #13373
    NewSeasonDesign
    Member

    Is there a way for me to post the actual file so you don't have to copy & paste? I didn't see any way to attach anything. Can you download it as a zipped file from here: http://newseasondesign.com/fixes/

    February 13, 2013 at 12:00 am #20022
    Chrissy Marquardt
    Member

    Hello

    I am a newbie web designer and just bought and installed the Prose Child Theme per the recommendation of one of your affiliates. I have tried multiple times uninstalling and reinstalling the Prose Child theme on my blog without any success.

    I am installing the Genesis zip file first via WordPress(.org), <i>not activating it</i> and then going back in and uploading the Prose zip file. The Genesis file goes through fine and it even shows up in my dashboard for me to go in and configure. When I install the Prose theme, here is the error message I am getting : -
    Installing Theme from uploaded file: ProseChildTheme.zip
    Unpacking the package…

    Installing the theme…

    This theme requires a parent theme. Checking if it is installed…

    The parent theme could not be found. You will need to install the parent theme, genesis, before you can use this child theme.

    Theme installed successfully.

    So even though the genesis them is installed on my Dashboard its as if the Prose files are not recognizing it. Ive gone through the whole gamut about 3 times now, even tried to install the Genesis sample zip to see if I missed something and that file did not work either.

    I was told that the Prose child theme was one of the easiest to work with, and Ive heard great things about the Genesis Framework. So far I have to admit I am not happy and have a headache as a result. PLease let me know how I can resolve this without having to do a lot of coding.

     

    Thank you

     

     

     


    WebSpyred Media: WordPress Websites & Genesis Themes| Follow Me on Twitter | Like Me on Facebook

    February 13, 2013 at 6:38 am #20050
    nickthegeek
    Member

    It helps if we have a link to your site. Please post a link to your site. Thanks.

    February 13, 2013 at 8:39 am #20059
    Chrissy Marquardt
    Member

    http://marquardtinc.com

    Thank you


    WebSpyred Media: WordPress Websites & Genesis Themes| Follow Me on Twitter | Like Me on Facebook

    February 13, 2013 at 8:45 am #20061
    NewSeasonDesign
    Member

    I don't know if this will help or not, but I always activate Genesis before I install the child themes.

    February 13, 2013 at 9:03 am #20065
    Chrissy Marquardt
    Member

    Thank you everyone for your response. Hope I didnt come across as too crabby in my post - it was late last night and I was having a heck of a time figuring out what I was doing wrong. When I download any themes my Mac automatically unzips the file so I usually have to go in and rezip everything and rename the zip file ( herein lies my mistake) .The ftp file has to be EXACTLy /wp-content/themes/genesis for the child theme to recognize the parent theme. I had it as wp-content/themes/GenesisFramework ( as in I renamed my zip file GenesisFramewrk, it auto defaults to Archive.zip) which is why the child themes were like " Where is my mama"

    Everything now seems to be in working order. Next step, customizing my theme. Boy there is so much to learn to  this web design stuff but I am having a lot of fun :). Thanks again and I hope my problem will help someone else for future reference 🙂

     


    WebSpyred Media: WordPress Websites & Genesis Themes| Follow Me on Twitter | Like Me on Facebook

    February 13, 2013 at 9:04 am #20066
    Chrissy Marquardt
    Member

    Thanks to Andrea from Copyblogger for pointing this out to me 🙂 !


    WebSpyred Media: WordPress Websites & Genesis Themes| Follow Me on Twitter | Like Me on Facebook

    February 13, 2013 at 9:07 am #20068
    nickthegeek
    Member

    Glad you found the issue. I was assuming that it was a problem with the theme folder name. The following is my standard response for this zip issue. It includes a couple of solutions so you might find it helpful.

    I recently switched to using a Mac and that first week this issue caused me endless frustrations. It turns out there is a default setting that unzips downloaded files and then deletes the zip file automatically. I guess this is handy unless you need the zip files like WordPress users do.

    I found there are two simple solutions. You can disable this option in the browser preferences. I just looked and the option says "Open safe files after downloading" and is in the "General" tab. Once disabled you should be able to download zip files like normal.

    The other option is to press "control" while clicking on your folder. Select to "compress" the folder and you will get a new zip file easy as that. It is super important that the Genesis folder be named "genesis" exactly like that. It can't be "genesis-2" or anything else like that.

    I hope this helps ease your frustration and gets you back on track.

  • Author
    Posts
Viewing 20 posts - 1 through 20 (of 23 total)
1 2 →
  • The forum ‘General Discussion’ is closed to new topics and replies.

CTA

Ready to get started? Create a site or shop for themes.

Create a site with WP EngineShop for Themes

Footer

StudioPress

© 2026 WPEngine, Inc.

Products
  • Create a Site with WP Engine
  • Shop for Themes
  • Theme Features
  • Get Started
  • Showcase
Company
  • Brand Assets
  • Terms of Service
  • Accptable Usse Policy
  • Privacy Policy
  • Refund Policy
  • Contact Us
Community
  • Find Developers
  • Forums
  • Facebook Group
  • #GenesisWP
  • Showcase
Resources
  • StudioPress Blog
  • Help & Documentation
  • FAQs
  • Code Snippets
  • Affiliates
Connect
  • StudioPress Live
  • StudioPress FM
  • Facebook
  • Twitter
  • Dribbble