rdellconsulting

p1casestudies-functions.php

Oct 23rd, 2014
173
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.15 KB | None | 0 0
  1. <?php
  2.  
  3. function debug($var) {
  4. echo "<pre>".print_r($var, true)."</pre>";
  5. }
  6. function dump($var) {
  7. echo "<pre>".var_dump($var)."</pre>";
  8. }
  9.  
  10. add_filter( 'the_content', 'do_shortcode', 11);
  11. add_filter( 'the_excerpt', 'do_shortcode', 11);
  12.  
  13. /* Change Excerpt length */
  14. /* Had to hardcode the core functions.php */
  15.  
  16.  
  17.  
  18. // START OF Twitter Feed
  19. add_action('wp_enqueue_scripts', 'add_twitterfeed', 150);
  20. function add_twitterfeed() {
  21. wp_enqueue_script('twitterfeed', get_stylesheet_directory_uri().'/js/twitterfeed.js', array('jquery') , null , true);
  22. }
  23. // END OF Twitter Feed
  24.  
  25. // START OF Post Types
  26.  
  27. add_filter( 'pre_get_posts', 'my_get_posts' );
  28.  
  29. function my_get_posts( $query ) {
  30.  
  31. // if ( !is_admin() && $query->is_home() && $query->is_main_query() || is_feed() ) {
  32. if ( !is_admin() && !is_home() && $query->is_main_query() && !is_page() && is_tax() ) {
  33. $query->set('post_type', array( 'statsbox', 'imagebox', 'socialbox', 'quotebox', 'linkbox', 'videobox', 'textbox' ) );
  34. $query->set('orderby', 'meta_value_num');
  35. $query->set('meta_key', 'order');
  36. $query->set('order', 'ASC');
  37. }
  38. }
  39.  
  40.  
  41. // ----------------------------------------------------------------------------------------
  42. // Gravity Forms
  43. // ----------------------------------------------------------------------------------------
  44.  
  45.  
  46. add_filter("gform_post_data", "change_post_data", 10, 3);
  47. function change_post_data($post_data, $form, $entry){
  48. //echo 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; die();
  49. $formid = $form["id"];
  50. switch ($formid) {
  51.  
  52. // 1. Add TextBox
  53. case 2:
  54. $postcontent = $entry["5"];
  55.  
  56. if('Yes' == $entry["16"]) {
  57. $wppa_shortcode_p = '[wppa type="photo" photo="'.$entry["17"].'" size="auto" align="center"][/wppa]';
  58. $wppa_shortcode_e = '[wppa type="photo" photo="'.$entry["17"].'" size="auto" align="center"][/wppa]';
  59. $post_data["post_content"] = '<p>'.$postcontent.'</p>'."<br />".$wppa_shortcode_p; // Body
  60. $post_data["post_excerpt"] = '<p>'.$postcontent.'</p>'."<br />".$wppa_shortcode_e; // Excerpt
  61. }
  62.  
  63. else {
  64. $post_data["post_content"] = $postcontent; // Body
  65. $post_data["post_excerpt"] = $postcontent; // Excerpt
  66. }
  67.  
  68. return $post_data;
  69. break;
  70.  
  71. // 2. Add ImageBox
  72. case 3:
  73.  
  74. if('photo' == $entry["22"]) {
  75. $wppa_shortcode_p = "[wppa type=".'"'.$entry["22"].'" photo="'.$entry["23"].'" size="auto" align="center"][/wppa]';
  76. $wppa_shortcode_e = "[wppa type=".'"'.$entry["22"].'" photo="'.$entry["23"].'" size="auto" align="center"][/wppa]';
  77. $postcontent = $entry["5"];
  78. }
  79.  
  80. elseif('album' == $entry["22"]) {
  81. $wppa_shortcode_p = "[wppa type=".'"'.$entry["22"].'" album="'.$entry["24"].'" size="auto" align="center"][/wppa]';
  82. $wppa_shortcode_e = "[wppa type=".'"'.$entry["22"].'" album="'.$entry["24"].'" size="auto" align="center"][/wppa]';
  83. $postcontent = $entry["5"];
  84. }
  85.  
  86. elseif('slide' == $entry["22"]) {
  87. $wppa_shortcode_p = "[wppa type=".'"'.$entry["22"].'" album="'.$entry["24"].'" size="auto" align="center"][/wppa]';
  88. $wppa_shortcode_e = "[wppa type=".'"'.$entry["22"].'" album="'.$entry["24"].'" size="auto" align="center"][/wppa]';
  89. $postcontent = $entry["5"];
  90. }
  91.  
  92. else {
  93. echo "There has been a problem, please try again"; break;
  94. }
  95.  
  96. $post_data["post_content"] = $wppa_shortcode_p."<br />".'<p>'.$postcontent.'</p>'; // Body
  97. $post_data["post_excerpt"] = $wppa_shortcode_e."<br />".'<p>'.$postcontent.'</p>'; // Excerpt
  98.  
  99. return $post_data;
  100. break;
  101.  
  102.  
  103. // 3. Add SocialBox
  104. case 4:
  105.  
  106. $socialchoice = $entry["10"];
  107.  
  108. if('facebook' == $socialchoice) {
  109.  
  110. if($entry["14"] !== "") {
  111. $fbchoice = $entry["14"]; }
  112. elseif($entry["19"] !== "") {
  113. $fbchoice = $entry["19"]; }
  114. else{echo "There has been a problem, please try again"; break;
  115. }
  116.  
  117.  
  118. $facebook_script1 = '<iframe src="http://www.facebook.com/plugins/likebox.php?href=http%3A%2F%2Fwww.facebook.com%2F';
  119. $facebook_script2 = '&width&colorscheme=light&show_faces=true&border_color&stream=true&header=true&height=600" scrolling="yes" style="border:none; overflow:hidden; width:100%; height:600px; background: white; float:left; " allowtransparency="true" frameborder="0"></iframe>';
  120. $facebook_script = $facebook_script1.$fbchoice.$facebook_script2;
  121. $postcontent = $entry["5"];
  122.  
  123. $post_data["post_content"] = $facebook_script."<br />".'<p>'.$postcontent.'</p>'; // Body
  124. $post_data["post_excerpt"] = $facebook_script."<br />".'<p>'.$postcontent.'</p>'; // Excerpt
  125. }
  126.  
  127. elseif('twitter' == $socialchoice) {
  128.  
  129. if($entry["16"] !== "" && $entry["17"] !== "") {
  130. $twname = $entry["16"];
  131. $twid = $entry["17"]; }
  132. else{echo "There has been a problem, please try again"; break;}
  133.  
  134. $twitter_code = '<a class="twitter-timeline" href="https://twitter.com/'.$twname.'" data-widget-id="'.$twid.'"></a>';
  135. $twitter_script = $twitter_code.'<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?\'http\':\'https\';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>';
  136. $postcontent = $entry["5"];
  137.  
  138. $post_data["post_content"] = $twitter_script."<br />".'<p>'.$postcontent.'</p>'; // Body
  139. $post_data["post_excerpt"] = $twitter_script."<br />".'<p>'.$postcontent.'</p>'; // Excerpt
  140.  
  141. }
  142.  
  143. else {
  144. echo "There has been a problem, please try again"; break;
  145. }
  146.  
  147. return $post_data;
  148. break;
  149.  
  150. // 4. Add VideoBox
  151. case 6:
  152.  
  153. $videochoice = $entry["10"];
  154. $youtubeid = $entry["14"];
  155. $vimeoid = $entry["17"];
  156.  
  157. if('youtube' == $videochoice) {
  158. if($youtubeid !== "") {
  159. $youtube_script1 = '<div class="videoWrapper"><iframe width="300" height="200" src="//www.youtube.com/embed/';
  160. $youtube_script2 = '?rel=0" frameborder="0" allowfullscreen></iframe></div>';
  161. $youtube_scriptc = $youtube_script1.$youtubeid.$youtube_script2;
  162. $youtube_scripte = $youtube_script1.$youtubeid.$youtube_script2;
  163.  
  164. $postcontent = $entry["5"];
  165.  
  166. $post_data["post_content"] = $youtube_scriptc."<br />".'<p>'.$postcontent.'</p>'; // Body
  167. $post_data["post_excerpt"] = $youtube_scripte."<br />".'<p>'.$postcontent.'</p>'; // Excerpt
  168. }
  169. }
  170.  
  171. elseif('vimeo' == $videochoice) {
  172. if($vimeoid !== "") {
  173. $vimeo_script1 = '<div class="videoWrapper"><iframe src="//player.vimeo.com/video/';
  174. $vimeo_script2c = ' width="300" height="200" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe></div>';
  175. $vimeo_script2e = ' width="350" height="197" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>';
  176. $vimeo_scriptc = $vimeo_script1.$vimeoid.$vimeo_script2c;
  177. $vimeo_scripte = $vimeo_script1.$vimeoid.$vimeo_script2e;
  178.  
  179. $postcontent = $entry["5"];
  180.  
  181. $post_data["post_content"] = $vimeo_scriptc."<br />".'<p>'.$postcontent.'</p>'; // Body
  182. $post_data["post_excerpt"] = $vimeo_scripte."<br />".'<p>'.$postcontent.'</p>'; // Excerpt
  183. }
  184. }
  185.  
  186. else {
  187. echo "There has been a problem, please try again"; break;
  188. }
  189.  
  190. return $post_data;
  191. break;
  192.  
  193.  
  194. // 5. Add QuoteBox
  195. case 5:
  196.  
  197. $postcontent = "";
  198. $quotes = ( unserialize ($entry["9"]));
  199.  
  200.  
  201. foreach($quotes as $quote) {
  202. $postcontent = $postcontent."<h4>".$quote["Quote"]."</h4>"."\n"."<p>".$quote["Attribution"]."</p>"."\n";
  203. }
  204.  
  205.  
  206. $post_data["post_content"] = $postcontent; // Body
  207. $post_data["post_excerpt"] = $postcontent; // Excerpt
  208.  
  209. return $post_data;
  210. break;
  211.  
  212.  
  213.  
  214. // 6. Add LinkBox
  215. case 7:
  216.  
  217. $postcontent = "";
  218. $links = ( unserialize ($entry["9"]));
  219.  
  220.  
  221. foreach($links as $link) {
  222. $postcontent = $postcontent."<h4>".$link["Description"]."</h4>"."\n".'<a href="'.$link["URL"].'"target="_blank">'.$link["URL"].'</a>'."\n";
  223. }
  224.  
  225. $post_data["post_content"] = $postcontent; // Body
  226. $post_data["post_excerpt"] = $postcontent; // Excerpt
  227.  
  228. return $post_data;
  229. break;
  230.  
  231. // 7. Add ClientBox
  232. case 9:
  233.  
  234. $postcontent = "<table>".
  235. "<tr><td>Title:</td><td>".$entry["1"]."</td></tr>".
  236. "<tr><td>Client Id:</td><td>".$entry["9"]."</td></tr>".
  237. "<tr><td>Client Name:</td><td>".$entry["8"]."</td></tr>".
  238. "<tr><td>Client Address:</td><td>".$entry["10"]."</td></tr>".
  239. "<tr><td>Client Website:</td><td>".$entry["15"]."</td></tr>".
  240. "<tr><td>Client FB Page:</td><td>".$entry["16"]."</td></tr>".
  241. "<tr><td>Client FB Id:</td><td>".$entry["17"]."</td></tr>".
  242. "<tr><td>Client Tw Name:</td><td>".$entry["18"]."</td></tr>".
  243. "<tr><td>Client Tw Id:</td><td>".$entry["19"]."</td></tr>".
  244. "<tr><td>Contact Name:</td><td>".$entry["11"]."</td></tr>".
  245. "<tr><td>Contact Phone:</td><td>".$entry["12"]."</td></tr>".
  246. "<tr><td>Contact Mobile:</td><td>".$entry["13"]."</td></tr>".
  247. "<tr><td>Contact Email:</td><td>".$entry["14"]."</td></tr>".
  248. "<table>";
  249.  
  250. $post_data["post_content"] = $postcontent; // Body
  251. $post_data["post_excerpt"] = $postcontent; // Excerpt
  252.  
  253. return $post_data;
  254. break;
  255.  
  256. // ERROR HANDLING
  257. default:
  258. echo "There has been a problem, please try again"; break;
  259.  
  260. }
  261.  
  262. }
  263.  
  264. //
  265. // Set up Category = Client Name
  266. //
  267. add_action("gform_pre_submission_9", "setup_category", 10, 2);
  268. function setup_category($form) {
  269.  
  270.  
  271. //Checking if category already there
  272.  
  273. $term = $_POST["input_22"];
  274. $taxonomy = 'clients';
  275. $args = array('cat_name' => $term, 'category_description' => '', 'category_nicename' => 'category-slug', 'category_parent' => '');
  276.  
  277. // Create the category
  278. if(!is_term($term, $taxonomy)){
  279. wp_insert_term($term, $taxonomy, $args);
  280. }
  281.  
  282. //returning modified form object
  283. return $form;
  284. }
  285.  
  286.  
  287.  
  288.  
  289. //
  290. // Fix Tab Order conflict with Contact Page
  291. //
  292. add_filter("gform_tabindex_2", create_function("", "return 1000;"));
  293. add_filter("gform_tabindex_3", create_function("", "return 1000;"));
  294. add_filter("gform_tabindex_4", create_function("", "return 1000;"));
  295. add_filter("gform_tabindex_5", create_function("", "return 1000;"));
  296. add_filter("gform_tabindex_6", create_function("", "return 1000;"));
  297. add_filter("gform_tabindex_7", create_function("", "return 1000;"));
  298. add_filter("gform_tabindex_9", create_function("", "return 1000;"));
  299.  
  300.  
  301. // ----------------------------------------------------------------------------------------
  302. // Feature Pages Unlimited
  303. // ----------------------------------------------------------------------------------------
  304.  
  305. function get_file_extension($file_name) {
  306. return substr(strrchr($file_name,'.'),1,3);
  307. }
  308.  
  309. add_filter('fpc_link_url' , 'rdc_fpu_hook', 10, 2);
  310. function rdc_fpu_hook( $original_link , $fp_id ) {
  311. $extension = get_file_extension ($original_link);
  312. //dump($original_link);dump($extension); die();
  313.  
  314. //assigns a custom link by page id
  315. $custom_link = array(
  316. //page id => 'Custom link'
  317. 1331 => 'http://www.p1casestudies.'.$extension.'/clients/capmaison',
  318. 1334 => 'http://www.p1casestudies.'.$extension.'/clients/heritage-resorts',
  319. 1337 => 'http://www.p1casestudies.'.$extension.'/clients/royal-westmoreland'
  320. );
  321.  
  322. foreach ($custom_link as $page_id => $link) {
  323. if ( get_permalink($page_id) == $original_link )
  324. return $link;
  325. }
  326.  
  327.  
  328. //if no custom title is defined for the current page id, return original
  329. return $original_link;
  330. }
Advertisement
Add Comment
Please, Sign In to add comment