RyanPym Posted December 8, 2012 Share Posted December 8, 2012 Hi, I am new to the forum, and am hoping you can help, I know a little about PHP, but not enough to solve an issue I have with a wordpress site I am currently working on. I am currently working with a plugin that shows posts by a specific user. At present, you can put the plugin into the theme pages by using <?php echo do_shortcode('[latestbyauthor author=username" show="3]'); ?> This requires you to manually input the authors username. I am trying to automate this, setting the user name based on the users profile you are viewing - here is the user profile page for reference:http://www.copymusic.co.uk/COPYmusicscout2/ Now I am familiar with how to pull the relevant users name, as I have used the following code to correctly display the "view uploads by xxxxx" link. I have been using the following: <?php echo $user->screenname; ?>. I therefore tried using <?php echo do_shortcode('[latestbyauthor author=<?php echo $user->screenname; ?>" show="3]'); ?> which didn't work. I read something online which suggested the 2nd echo wasn't required so I tried <?php echo do_shortcode('[latestbyauthor author= $user->screenname" show="3]'); ?> which again didn't work. I am therefore a little stuck . . At the moment it is just displaying the last few posts onto the site, I have tried manually inputting the relevant user name and it does work, but obviously shows the same posts regardless of user profile! I am pretty familiar with some PHP so can take simple instructions, unfortunately I am a bit stuck at this time! Any suggestions will be greatly appreciated, if you need any more detail, please let me know! Many thanks Ryan Quote Link to comment https://forums.phpfreaks.com/topic/271752-echo-within-echo/ Share on other sites More sharing options...
scootstah Posted December 8, 2012 Share Posted December 8, 2012 (edited) You're close. Check out the manual page for strings; http://php.net/manual/en/language.types.string.php Since you're using double quotes you can either enclose the variable with curly brackets, or you can concatenate. <?php echo do_shortcode('[latestbyauthor author=" ($user->screenname)" show="3"]'); ?> <?php echo do_shortcode('[latestbyauthor author=" " . $user->screenname . "" show="3"]'); ?> EDIT: Oops, I guess you are actually using single quotes. So you'd have to concatenate then: <?php echo do_shortcode('[latestbyauthor author=" ' . $user->screenname . '" show="3"]'); ?> Edited December 8, 2012 by scootstah Quote Link to comment https://forums.phpfreaks.com/topic/271752-echo-within-echo/#findComment-1398238 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.