Warning: The magic method Shapely_Related_Posts::__wakeup() must have public visibility in /home/samanthasoper/public_html/wp-content/themes/shapely/inc/class-shapely-related-posts.php on line 89

Warning: Cannot modify header information - headers already sent by (output started at /home/samanthasoper/public_html/wp-content/themes/shapely/inc/class-shapely-related-posts.php:89) in /home/samanthasoper/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1775

Warning: Cannot modify header information - headers already sent by (output started at /home/samanthasoper/public_html/wp-content/themes/shapely/inc/class-shapely-related-posts.php:89) in /home/samanthasoper/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1775

Warning: Cannot modify header information - headers already sent by (output started at /home/samanthasoper/public_html/wp-content/themes/shapely/inc/class-shapely-related-posts.php:89) in /home/samanthasoper/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1775

Warning: Cannot modify header information - headers already sent by (output started at /home/samanthasoper/public_html/wp-content/themes/shapely/inc/class-shapely-related-posts.php:89) in /home/samanthasoper/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1775

Warning: Cannot modify header information - headers already sent by (output started at /home/samanthasoper/public_html/wp-content/themes/shapely/inc/class-shapely-related-posts.php:89) in /home/samanthasoper/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1775

Warning: Cannot modify header information - headers already sent by (output started at /home/samanthasoper/public_html/wp-content/themes/shapely/inc/class-shapely-related-posts.php:89) in /home/samanthasoper/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1775

Warning: Cannot modify header information - headers already sent by (output started at /home/samanthasoper/public_html/wp-content/themes/shapely/inc/class-shapely-related-posts.php:89) in /home/samanthasoper/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1775

Warning: Cannot modify header information - headers already sent by (output started at /home/samanthasoper/public_html/wp-content/themes/shapely/inc/class-shapely-related-posts.php:89) in /home/samanthasoper/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1775
{"id":96,"date":"2016-02-04T17:40:13","date_gmt":"2016-02-04T22:40:13","guid":{"rendered":"http:\/\/samanthasoper.com\/?post_type=jetpack-portfolio&p=96"},"modified":"2017-09-18T16:22:05","modified_gmt":"2017-09-18T22:22:05","slug":"custom-clubmaking-widget","status":"publish","type":"jetpack-portfolio","link":"https:\/\/samanthasoper.com\/portfolio\/custom-clubmaking-widget\/","title":{"rendered":"Custom Clubmaking Widget on Golfsmith"},"content":{"rendered":"

Through collaboration with Golfsmith’s Information Services team, the Custom Clubmaking module moved from a standalone page to a seamless integration within the product pages. Initially, the form was built to feed into a table-based layout. As a result, I cleaned up the PHP code to output HTML in line with more modern standards and IS implemented it without issue. After that, I moved onto redesigning and coding out the CSS, while they worked on the backend.<\/p>\n

Custom Clubmaking Widget<\/h2>\n

After the first pass, I had succeeded in giving the module a more modern look and feel. You can see this first version in the UX Planning & Prototypes section below.<\/p>\n

Due to the potential length of the widget, jQuery UI’s accordion widget was implemented to save space. I worked directly with a member of the IS team at their computer to implement the front-end jQuery calls. The final launched version is in the screenshot below.<\/p>\n

Screenshots<\/h4>\n

NOTE ON LIVE EXAMPLES:<\/strong> As of 11\/4\/16, Golfsmith is no longer conducting business and all associated websites are offline.<\/em><\/p>\n

\"Custom<\/a><\/p>\n

UX Planning & Prototypes<\/h4>\n

As stated above, the widget initially used a table-based layout. While organizing the information into a wireframe, I realized the tables would cause some issues. In addition, I read through the PHP code to plan for all the variable options.<\/p>\n